
软件测试技术
文章平均质量分 66
wangxin0314
一只站在树上的鸟儿,从来不会害怕树枝会断裂,因为它相信的不是树枝,而是它自己的翅膀。与其每天担心未来,不如努力做好现在。
展开
-
JVM源码分析之javaagent原理完全解读
概述本文重点讲述javaagent的具体实现,因为它面向的是我们Java程序员,而且agent都是用Java编写的,不需要太多的C/C++编程基础,不过这篇文章里也会讲到JVMTIAgent(C实现的),因为javaagent的运行还是依赖于一个特殊的JVMTIAgent。对于javaagent,或许大家都听过,甚至使用过,常见的用法大致如下:java -javaagent:m转载 2017-04-06 16:43:24 · 580 阅读 · 0 评论 -
基于webdriver的web UI自动化测试框架(系统架构+测试脚本应用架构)
基于webdriver的web UI自动化测试框架(系统架构+测试脚本应用架构)自动化测试系统及应用架构原创 2015-12-08 16:32:10 · 13761 阅读 · 28 评论 -
使用postman做接口测试
使用postman做接口测试1.在google应用商店搜索"postman"并添加如下插件到chrome浏览器中:点击postman图标启动postman:Postman操作界面如下:输入请求的接口地址,并选择请求方法,配置请求参数 已POST请求为例子,如下:点击"Send"按钮返回结果:接下来就可以按照接口文档 及业务文档做 详细原创 2016-01-12 16:39:53 · 13362 阅读 · 0 评论 -
自动化测试使用mybatis更新数据库信息实例
自动化测试使用mybatis更新数据库信息实例代码如下:mybatis配置文件: DAO层接口package ec.qa.autotest.ui.dao;import java.util.List;import ec.qa.autotest.ui.dao.model.SupplierInfo;原创 2015-12-29 18:06:12 · 1754 阅读 · 3 评论 -
JAVA-责任链模式
JAVA-责任链模式责任链模式是一种对象的行为模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织和分配责任。==引用自在阎宏博士的《JAVA与模式》责任链:责任链模式涉及到的角色如下所示: ● 抽象处理者(H原创 2015-12-13 16:46:21 · 411 阅读 · 0 评论 -
手机App测试总结
手机App测试总结手机上的app分为基于HTML5的app(类似于pc上的b/S应用)和本地app(类似于C/S结构)。所以测试上我们也可以充分吸收web的b/s和c/s测试经验。但是不同于pc上的应用测试,手机上的测试有其独特性 测试前的思考:我们这个产品主要是做什么的?为什么我要做这个产品?市场上有那些同类型的产品?测试前的准备:1.使用同类型的产品,不仅仅是使用,应该是测试同类型的产品。2.熟转载 2016-01-29 15:59:34 · 1437 阅读 · 0 评论 -
Http Request header/Response header
Http Request header/Response headerHTTP Request header当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。使用Fidd转载 2016-01-29 17:06:48 · 9572 阅读 · 1 评论 -
java 在一段英文文本中计算每个单词出现的次数
java 在一段英文文本中计算每个单词出现的次数目前自己总结了以下方式:1,将文本读出为一个字符串,使用indexof 和 substring 进行递归的搜索切割计算每次找到同一单词的次数,注意排重,每次查找新的单词时候,需要判断这个单词是否已经计算过出现的次数。2,将文本的单词切割并维护到一个MAP中,已单词为KEY 对应的VALUE为这个单词出现的次数,然后启用多线程,结合方法1 进行 查找计算。3.如果文本很大,达到了大数据的原创 2016-02-29 11:13:59 · 6498 阅读 · 2 评论 -
Java内存泄露原因详解
Java内存泄露原因详解测试过程中,系统的内容使用问题 ,也是测试的重点,需要我们测试人重点关注。一、Java内存回收机制 不论哪种语言的内存分配方式,都需要返回所分配内存的真实地址,也就是返回一个指针到内存块的首地址。Java中对象是采用new或者反射的方法创建的,这些对象的创建都是在堆(Heap)中分配的,所有对象的回收都是由Java虚拟机通过垃圾回收机制完成的。GC为了能够正确释放对象,会监控每个对象的转载 2016-02-29 11:17:56 · 360 阅读 · 0 评论 -
互联网产品快速迭代下是否需要写详细测试用例
由于自己在互联网电商公司工作,产品需求很多,平台功能迭代很快,有时一个功能需求评审+开发+测试 +上线总共只有1天时间的计划,而且有些紧急需求不允许delay,这时我们如何分配实际执行测试时间和测试用例编写时间? 我认为我们不能一味的 墨守以前的测试流程,测试用例固然重要,但是如果写测试用例消耗了绝大部分测试时间,那将是得不偿失的,写过用例的都是知道,用例在实际...原创 2016-01-06 18:21:37 · 4681 阅读 · 3 评论 -
Webdriver UI自动化测试定义工具类方便用例获取资源
Webdriver UI自动化测试定义工具类方便用例获取资源1.测试用例中需要上传图片的时候,图片作为测试数据,维护在测试数据文件中:2.为了方便用例里面随用随拿 定义如下工具类 :package ec.qa.autotest.ui.utility;/** * @author xin.wang * 获取测试图片地址 */public class PictureUtil { private static Strin原创 2015-12-17 14:49:45 · 1260 阅读 · 0 评论 -
思维导图软件Freemind简介
思维导图软件Freemind简介转载 2016-03-25 15:54:33 · 2227 阅读 · 0 评论 -
web页面URL地址传递参数检查方法
Web页面通过URL地址传递参数常见问题及检测方法Web页面即我们在浏览器中所看到的网页,在Web应用程序中,其页面往往需要进行动态切换和数据交互,页面间的数据常规传递方法有多种,本文主要介绍Web页面处理程序中常见的URL地址参数传递方法,包括概述其实现原理、特点和常见问题,最后介绍检测该方式常见应用问题的测试思路和方法。1.web页面的概念Web是internet上一个非常重要转载 2017-02-22 16:32:26 · 5914 阅读 · 0 评论 -
如何做一个让人看得起的测试人员
做测试做了5年,开发做了2年,“只有开发才是生产力”,因为这种现象的存在,所以很多国内企业,尤其是一些小型的企业,对测试重视程度不够,甚至没有专门的测试人员,可能有的是为了项目需要,设立了测试团队,1人测试团队也屡见不鲜,我就知道好多企业是一人测试组,而且还是应届生的也有。对于这样的企业,您无法想象测试人员的地位会是什么样,老板都觉得设置测试人员是组织架构需要,而不是为了质量需要,那开发人员对测试原创 2016-07-19 11:45:47 · 1052 阅读 · 1 评论 -
实体类(VO,DO,DTO)的划分
经常会接触到VO,DO,DTO的概念,本文从领域建模中的实体划分和项目中的实际应用情况两个角度,对这几个概念进行简析。得出的主要结论是:在项目应用中,VO对应于页面上需要显示的数据(表单),DO对应于数据库中存储的数据(数据表),DTO对应于除二者之外需要进行传递的数据。一、实体类百度百科中对于实体类的定义如下:实体类的主要职责是存储和管理系统内部的信息,它也可以有转载 2016-07-19 11:26:45 · 50325 阅读 · 3 评论 -
spring mvc 中使用spring的validator
前面完成了mvc基本框架,现在学习一下对表单输入的验证:目前我所知道的带表单验证功能的是一个协议JSR303,包括EJP、hibernate、spring和apache都有类似库1.使用spring自带的Validator:建立一个"Validator" (如果验证的类中的属性是一个需要验证的类,可以将它的validator嵌入到这里,详见reference)使用spring mv转载 2016-07-25 12:55:59 · 1278 阅读 · 0 评论 -
使用xmind编写测试用例
XMind 是一款非常实用的商业思维导图软件,应用全球最先进的Eclipse RCP 软件架构,全力打造易用、高效的可视化思维软件,强调软件的可扩展、跨平台、稳定性和性能,致力于使用先进的软件技术帮助用户真正意义上提高生产率。XLOGOMind采用Java语言开发,具备跨平台运行的性质,且基于EclipseRCP体系结构,可支持插件,插件通过编写XML清单文件可以扩展系原创 2016-06-06 12:28:18 · 29685 阅读 · 1 评论 -
如果时间不够 ,无法进行充分的测试怎么办?
如果时间不够 ,无法进行充分的测试怎么办?转载 2016-04-10 15:46:08 · 6397 阅读 · 0 评论 -
编写测试用例需要考虑的一些因素
编写测试用例需要考虑的一些因素原创 2016-04-10 15:15:47 · 12577 阅读 · 1 评论 -
webdriver UI自动化测试执行JS脚本
webdriver UI自动化测试执行JS脚本不管是selenium RC 还是 webdriver 其在浏览器端 最终还是通过JS来操作页面元素实现自动化测试的(可参见2者的实现原理),在做自动化测试的时候,如果webdriver现有的java API 不满足测试需要的时候,我们可以尝试执行js脚本在协助自动化测试的运行,还好webdriver提供了执行JS脚本的接口:webdriver.executeScript(String jsCMD原创 2015-12-25 17:04:41 · 3876 阅读 · 0 评论 -
linux tar命令总结
linux tar命令总结tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。-z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到标准输出原创 2016-02-29 11:39:03 · 431 阅读 · 0 评论 -
hdfs常用命令
hadoop hdfs常用命令 hadoop常用命令: hadoop fs 查看Hadoop HDFS支持的所有命令 hadoop fs –ls 列出目录及文件信息 hadoop fs –lsr 循环列出目录、子目录及文件信息 hadoop fs –put test.txt /user/sunli原创 2016-02-29 11:20:41 · 753 阅读 · 0 评论 -
前端性能优化----yahoo前端性能团队总结的35条黄金定律
前端性能优化----yahoo前端性能团队总结的35条黄金定律转载 2016-03-07 16:21:15 · 594 阅读 · 0 评论 -
白盒测试技术含量不一定比黑盒测试高
白盒测试技术含量就比黑盒测试高?最近在群里发现这个比较有意思,某人一说自己在做白盒测试,其余的人顿生景仰之情,急急称牛人乎,米多乎!首先我们看看定义:白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内原创 2015-12-13 14:14:45 · 3009 阅读 · 0 评论 -
Linux VI常用命令
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复f转载 2015-12-14 21:41:48 · 348 阅读 · 0 评论 -
泛型的内部原理:类型擦除以及类型擦除带来的问题
一、Java泛型的实现方法:类型擦除前面已经说了,Java的泛型是伪泛型。为什么说Java的泛型是伪泛型呢?因为,在编译期间,所有的泛型信息都会被擦除掉。正确理解泛型概念的首要前提是理解类型擦出(type erasure)。Java中的泛型基本上都是在编译器这个层次来实现的。在生成的Java字节码中是不包含泛型中的类型信息的。使用泛型的时候加上的类型参数,会在编译器在编译的时候去掉转载 2015-12-13 07:16:06 · 2129 阅读 · 0 评论 -
软件测试-边界值和等价类
边界值测试 所谓边界值,关注的是变量取值空间的边界。之所以采用值域的边界进行测试,是因为通常的错误更可能出现在输入变量的极值附近。在这里还有另外一种假设,我们认为,软件失效极少由两个(或者多个)缺陷问题引起的。边界值分析的基本思想是使用在最小值、略高于虽小值、正常值、略低于最大值和最大值出取输入变量值(min、min+、nom、max-和max)。健壮性测试是在边界值测试原创 2015-12-14 15:29:20 · 8741 阅读 · 0 评论 -
为什么要Code Review
1.Code review的层次。最基础的,也是所有人都会想到到的,就是编码规范,类,方法命名什么的,还有代码格式...这些是程序员的基本功底,默认选项;多年前领导要我搞个编码规范,我说大家都熟知的规范就已经很好了啊;当然公司内部也需要这方面的规范,比如项目如何命名,包如何命名等这些。更高一层次的,也是说的比较少的,是代码的质量。前面能保证代码写的好看,大家看了都还顺眼,但并不转载 2015-12-08 22:20:20 · 346 阅读 · 0 评论 -
测试用例设计--因果图
定义因果图法就是从程序规格说明书的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表,最后为判定表中的每一列设计一个测试用例。首先我们来了解一下因果图的基本符号:2. 应用的范围更复杂的条件组合,2^n,n比较多的时候3. 步骤1) 根据程序规格说明书描述的语义内容,分析并确定“因”和“果”;2) 将“因转载 2015-12-09 21:47:39 · 1587 阅读 · 0 评论 -
什么是集成测试
集成测试,又称为组装测试,就是将软件产品中各个模块组装起来,检查其接口是否存在问题,以及组装后的整体功能、性能表现。在开展集成测试之前,我们进行了深入的单元测试(当然,实际工作中大多公司不会做单元测试,仅有程序员各自检查自己的代码),从个体来讲,可能解决了很多的缺陷,但所有的个体组合起来,就可能出现各种各样的问题。1+1 集成测试一般可采用非增式集成方法、增式集成方法(自底向上转载 2015-12-09 22:03:36 · 4688 阅读 · 0 评论 -
为什么要Code Review
1.Code review的层次。最基础的,也是所有人都会想到到的,就是编码规范,类,方法命名什么的,还有代码格式...这些是程序员的基本功底,默认选项;多年前领导要我搞个编码规范,我说大家都熟知的规范就已经很好了啊;当然公司内部也需要这方面的规范,比如项目如何命名,包如何命名等这些。更高一层次的,也是说的比较少的,是代码的质量。前面能保证代码写的好看,大家看了都还顺眼,但并不转载 2015-12-08 22:21:12 · 345 阅读 · 0 评论 -
使用Selenium或appium做 Android自动化测试
Android WebDriverhttp://code.google.com/p/selenium/wiki/AndroidDriverSelenium官方支持的Android Driver支持模拟器和真机支持的平台:The current apk will only work with Gingerbread (2.3.x), Honeycomb (3.x), Ice Cr原创 2015-12-16 16:53:44 · 4268 阅读 · 0 评论 -
Webdriver UI自动化测试自动装配测试用例所需的数据对象
自动化测试中,维护测试数据 是一项很重要的工作,为了达到用例和测试数据的分离,我们一般会把数据存储在外部文件 或 数据库,为了简化测试,测试用例编写人员想只需要维护测试数据文件,在用例里通过简单声明,即可随意读取本次测试用例所需要的测试数据,我的思路还是为测试用例自动注入测试数据对象。代码如下:定义测试对象标签,只要在用例里的类域加了此标签 测试框架便认为此域变量是个测试数据对象:pa原创 2015-12-15 19:04:22 · 2159 阅读 · 0 评论 -
Webdriver UI自动化测试 实现自动登录
自动化测试实施过程中,有测试需求:第一个用例时登录用例,只要登录成功,后面的用例就不需要重复登录。随机想到了每次请求目标网站,携带上次登录成功后服务端返回的cookie,来实现绕过登录:保持cookie的工具类:package ec.qa.autotest.ui.utility;import org.openqa.selenium.Cookie;/** * @author原创 2015-12-17 15:26:38 · 4345 阅读 · 0 评论 -
测试用例实例--三角形用例设计
测试用例实例--三角形用例设计转载 2016-03-06 14:39:24 · 6786 阅读 · 0 评论 -
linux more less 使用介绍
linux more less 使用介绍原创 2016-03-03 13:52:16 · 1197 阅读 · 0 评论 -
一个Linux Shell入门的例子
Shell脚本如下: 1 #!/bin/bash 2 # we have less than 3 arguments. Print the help text: 3 if [ $# -lt 3 ]; then 4 catHELP 5 ren -- renames a number of files using sed regular expressions 6转载 2016-01-14 15:30:01 · 439 阅读 · 0 评论 -
linux awk命令使用实例
AWK是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言(其名称得自于它的创始人阿尔佛雷德·艾侯、彼得·温伯格和布莱恩·柯林汉姓氏的首个字母)的最大功能取决于一个人所拥有的知识。使用方法awk '{pattern + action}' {filenames}尽管操作可能会很复杂,但语法总是这样,其中 pat原创 2016-01-06 16:58:20 · 2484 阅读 · 0 评论 -
Webdriver 自动化测试使用XML+DOM4J维护测试数据
测试工程添加如下XML文件,并在POM中引入DOM4J的包: dom4j dom4j 1.6 XML结构: 使用DOM解析上述XML文件:public class ParseDataXml { private static String testDataFielsuffix = "原创 2016-01-14 11:03:36 · 773 阅读 · 0 评论 -
做好软件测试需要具备的思维方式
最近部门来了好几位应届毕业生加入团队,我们也大张旗鼓的组织了集中式的培训,其中我需要对关于测试工作进行简介,在培训内容中,我特地整理和回顾了做好软件测试需要具备的思维方式,当时也就4张PPT。在此,我再详细整理出文字内容也分享出来给广大的同行。首先,从需求,用户及研发角度考虑,要想为产品贡献最大的力量,就不能只专注于做好测试保证质量这一个方面,而应该是从多个角度全面衡量。 从图转载 2015-12-30 19:43:10 · 801 阅读 · 0 评论