一、软件测试概念
广义概念:指的是软件生存周期中的所有检查、评审和确认工作,其中包括对分析、设计阶段,以及完成开发后维护阶段的各类文档、代码的审查和确认。
狭义概念:检查软件中的缺陷的过程。
二、软件测试的目的
1、发现软件中的各种缺陷
2、提高软件的质量
3、评估软件的质量
4、以较少的测试用例、时间和人力找出软件中的各种错误和缺点,确保软件的质量
三、软件测试的原则
1、Good-enough:一种权衡投入/产出比的原则;
2、保证测试的覆盖程度,在有限的时间和资源下进行完全测试;
3、所有的测试都应追溯到用户需求;
4、越早测试越好,测试过程和开发过程相结合;
5、测试规模由小到大,从单元测试到系统测试;
6、开发者尽量避免检查自己的程序;
7、不能为了便利擅自修改程序;
8、既测试软件该做什么,也测试软件不做什么;
9、某一部分存在的错误越多,应当花较多的时间和代价测试这一部分,注意集群现象;
10、妥善保存测试计划、方案、用例、BUG记录及最终分析报告等文件;
四、软件测试的重点
1、测试用例的设计
测试用例的设计是整个软件测试工作的核心;
测试用例反应对被测对象的质量要求,决定对测试对象的质量评估;
2、测试工作的管理
尤其是对包含多个子系统的大型软件系统,
3、测试环境的建立
测试环境应该与实际环境一致
五、软件测试的对象
程序开发过程中的各个文档、源程序、目标程序及数据。
六、测试流程
1、需求评审
阅读需求、理解需求、了解需求并分析
2、测试计划
根据需求估算测试所需资源(人力、设备等),所需时间、功能点划分、如何合理安排资源等。
3、用例设计
根据测试计划、任务分配、功能点划分,设计合理的测试用例。
4、执行测试
根据测试用例的详细步骤,执行测试用例。
5、缺陷跟踪
6、回归测试
7、编写测试报告