软件生命周期:
计划阶段->需求分析阶段->设计阶段->开发阶段->测试阶段->运行和维护阶段
软件开发模型:
瀑布模型
螺旋模型
快速原型模型
测试模型:
V模型:
W模型(测试伴随软件的整个生命周期,测试于开发是并行独立进行的.适用于大中型企业):
测试基本原则:
1. 要把尽早的和不断地测试作为测试人员的座右铭;
2. 第三方测试会更加客观;
3. 80%的错误发生在20%的模块;
4. 未测出的错误数量和已测出的错误数量成正比;
5. 应该彻底检查每个测试的执行结果;
6. 测试用例的编写不仅应根据有效的和预料到的输入情况,而且也应该根据无效的和未预料到的输入情况
7. 检擦程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了其不应该做的”;
8. 要妥善的保存一切文档,便于后期进行复用
9. 计划测试工作时不应默许假定不会发现错误
测试用例八要素:
测试编号,测试模块,前置条件,预期输入,输出结果,测试用例标题,操作步骤,级别
测试用例设计方法:
等价类划分法:利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能;利用无效等价类可校验程序对于无效数据的处理能力,检测程序的健壮性、容错能力
边界值法
因果图法
边界值法是等价类划分法的补充,一般对于有输入的使用
判定表法
输入和输出之间存在一定的逻辑关系
场景法(适合于涉及业务流程的,多个模块组合使用的)
基本流: 基本流表示通过业务流程时输入都正确,能达到目标的流程
备选流:备选流表示通过业务流程时输入错误(或者操作错误)导致流程存在反复,但是经过纠正后仍能达到目标的流程.
异常流:异常流表示通过业务流程时输入错误(或者操作错误)产生异常终止流程
软件缺陷:
软件缺陷是指软件或程序中存在的某种破坏正常运行能力的问题,错误,其存在会导致软件产品在某种程度上不能满足用户需求
缺陷的严重程度:
- 致命缺陷:造成系统或应用程序崩溃、死机、系统挂起,或造成数据丢失,主要功能完全丧失,导致本模块以及相关模块异常等问题
- 严重缺陷:系统的主要功能部分丧失,数据不能保存,次要功能全部丧失
- 一般缺陷:次要功能没有完全实现,但是不影响使用
- 较小的软件缺陷:较小错误的软件缺陷,使操作者不方便或遇到麻烦,但它不影响功能性的操作和执行,如错别字、界面不规范等
项目测试流程:
搭建测试环境
快速熟悉项目
编写测试计划
编写测试方案
设计编写执行测试用例
生成测试报告
Jmeter
Jmeter操作:
添加测试计划——>创建线程组——>添加HTTP请求——>查看结果树
Jmeter八大原件执行顺序:
1. 配置元件
2. 前置处理器
3. 定时器
4. 取样器
5. 后置处理器
6. 断言
7. 监听器
性能测试分类:
1. 负载测试
通过逐步增加系统负载,测试系统性能变化,并最终确定在满足系统的性能指标的情况下,系统所能承受的最大负载量的测试
2. 压力测试
通过逐步增加系统负载,测试系统性能变化,并最终确定在什么负载条件下系统性能处于失效状态
3. 并发测试
测试应用服务器指定供能的同时访问数是否达到预期效果
5. 稳定性测试(理解)
通过给系统加载一定的业务压力(如:CPU资源在70%~90%的使用率)的情况下,运行一段时间,检查系统是否稳定。
性能测试常用指标:
1. 吞吐量:指的是单位时间内处理的客户端请求数量,直接体现软件系统的性能承载能力
2. 并发数:并发性测试描述的是多个客户端同时向服务器发出请求,考察服务器端承受能力的一种性能测试方式
3. 响应时间:从客户端发出请求,到收到服务器响应的过程耗费多长时间
4. 点击数:统计的是客户端向Web服务器发了多少次HTTP请求计算的。
5. 资源利用率:指系统各种资源的使用情况,一般情况下:
- 建议CPU使用率不高于80%(±5);
- 内存使用率不高于80%;
- 磁盘读写时间比不高于90%。
6. 错误率:错误率指系统在负载情况下,失败交易的概率