一、软件测试功能测试
测试用例编写是软件测试的基本技能;也有很多人认为测试用例是软件测试的外围;软件测试中最重要的是设计和生成无效的测试用例;测试用例是测试工作的领导,是软件测试的必须恪守的准则。
黑盒测试常见测试用例编写办法
1、等价类
选取多数有代表性的数据,这一类数据等价于这一类的其它值;找出最小的子集,能够发现最多的谬误;个性:必须设计的用例;涵盖了大部分状况;
2、边界值
所谓边界条件,是指输出和输入等价类中那些恰好处于边界、超过边界、或在边界以下的状态;特色:抉择一个或多个元素,以便等价类的每一个边界都通过了测试;与仅仅关注输出条件不同,还须要思考后果空间(输入等价类)设计测试用例;
3、因果图
输出条件的组合进行剖析。用一个零碎的办法抉择出高效的测试用例集;
剖析思路:
a、剖析规格阐明形容,确定起因和后果,并赋予标识符;
b、剖析规格阐明语义,找出起因与起因之间,起因与后果之间关系,画出因果图;
c、有些起因与起因之间,起因与后果之间组合不会呈现,用记号表明束缚或限度条件;
d、因果图转换为断定表;
e、断定表的每一列作为根据,设计测试用例;
4、断定表驱动法
剖析和表白多逻辑条件下执行不同操作的状况的工具;略过因果图的绘制,间接列出所有组合进行筛选;
5、正交实验法
利用因果图来设计测试用例时, 输出起因与输入后果之间的因果关系, 有时很难从软件需要规格阐明中失去;往往因果关系十分宏大, 以至于测试用例数目微小,为了无效地、正当地缩小测试的工时与费用, 可利用正交实验设计办法进行测试用例的设计。
6、性能图法
一个程序的性能包含动态和动静阐明。动静阐明形容输出数据的秩序或转移的秩序,和业务流程严密对应。动态阐明形容了输入输出条件之间的对应关系。对于面向市场的产品,其逻辑简单、组合宏大,必须用动静阐明来补充性能阐明。性能图设计办法:性能图办法应用性能图形象地示意程序的性能阐明,并机械地生成性能图的测试用例。咱们在不同文档中看到的“状态迁徙图”、“流程图”、“菜单树”,在肯定水平上都是性能图的不同体现,不同测试人员可能对具体方法的应用稍有不同。
7、场景实验法
当初的软件简直都是用事件触发来管制流程的,事件触发时的情景便造成了场景,而同一事件不同的触发程序和处理结果就造成事件流。该办法能够比拟活泼地描绘出事件触发时的情景,有利于测试设计者设计测试用例,是测试用例更容易了解和执行。
8、谬误推断法
基于教训和直觉揣测程序中所有可能存在的各种谬误, 从而有针对性的设计测试用例的办法;更多的与用户的应用习惯及测试程序中的常见问题为主。
9、需要转化
依据需要,执行需要剖析,并编写测试用例。
10、设计文档
参照设计文档,能够了解软件系统外部设计流程及解决机制,比照写好的测试用例,能够在对应性能及模块处新增;
11、摸索式测试
有限创意的测试点,永无止境的摸索测试;咱们要在测试的最前沿施展洞察力、技术及应变措施,找出产品的缺点;
二、软件测试接口测试
1、什么是接口测试?
接口测试是测试零碎组件间接口的一种测试。接口测试次要用于检测内部零碎与零碎之间以及外部各个子系统之间的交互点。测试的重点是要检查数据的替换,传递和管制治理过程,以及零碎间的互相逻辑依赖关系等。
2、为什么要做接口测试?
a) 现在的零碎复杂度一直回升,传统的测试方法老本急剧减少且测试效率大幅降落,接口测试能够提供这种状况下的解决方案。
b) 接口测试绝对容易实现自动化继续集成,且绝对 UI 自动化也比较稳定,能够缩小人工回归测试人力老本与工夫,缩短测试周期,反对后端疾速发版需要。接口继续集成是为什么能低成本高收益的本源。
c) 当初很多零碎前后端是拆散的,从平安层面来说:
1)、只依赖前端进行限度曾经齐全不能满足零碎的平安要求(绕过后面切实太容易),须要后端同样进行管制,在这种状况下就须要从接口层面进行验证。
2)、前后端传输、日志打印等信息是否加密传输也是须要验证的,特地是波及到用户的隐衷信息,如身份证,银行卡等。
3、如何做接口测试
a、依据后端开发提供的接口测试文档进行接口测试验证
如图:
而后依据接口文档输出 url,参数,查看响应是否正确
b、在没有接口文档的状况下,应用抓包工具进行接口数据抓取,抓包工具:fiddler
三、软件测试性能测试
1、性能测试畛域剖析
依据对我的项目背景,业务的理解,确定本次性能测试要解决的问题点;是测试零碎是否满足理论运行时的须要,还是目前的零碎在哪些方面制约零碎性能的体现,或者,哪些零碎因素导致
零碎无奈跟上业务倒退?确定测试畛域,而后具体问题具体分析。
2、用户场景分析和业务建模
依据对系统业务、用户沉闷工夫、拜访频率、场景交互等各方面的剖析,整顿一个业务场景表,当然其中最好对用户操作场景、步骤进行具体的形容,为测试脚本开发提供根据。
3、确定性能指标
后面曾经确定了本次性能测试的应用领域,接下来就是针对具体的畛域关注点,确定性能指标(指标);
比方:
①登录申请到登录胜利的页面响应工夫不能超过 2 秒;
②报表审核提交的页面响应工夫不能超过 5 秒;
③文件的上传、下载页面响应工夫不超过 8 秒;
4、性能测试脚本的编写
性能测试工具:loadrunner、jmeter
这里应用 jmeter,因为 loadrunner 安装包太大不够轻便。
jmeter 性能测试,就是通过接口对服务器进行高并发拜访的,所以脚本的编写的就和接口测试的时候差不多,输出 url,参数等,
四、软件测试自动化测试
1、ui 自动化测试
a、web 端 ui 自动化测试、个别是应用 python+selenium,定位页面元素而后通过浏览器驱动,模仿人进行页面操作,实现 web 端 ui 自动化测试
b、挪动端 ui 自动化测试、个别是应用 python+appium,通过调用 Android 的 jdk,获取 app 页面元素,模仿人进行 app 操作,实现挪动端 ui 自动化测试
2、接口自动化测试
接口自动化测试个别应用的是 python+requests,或者 httpx。这里博主应用的 requests,因为比较简单。简略的例子,如图: