一、软件测试理解
1.软件测试是一种有效提高软件质量的手段,但是软件质量不仅仅是测试出来的。
2.好的测试人员不仅要掌握各种测试技术和工具,还要具备丰富的编程技术和对BUG的敏感。
3.软件测试要早做计划,分配好时间、人力、财力等资源。
4.软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心准备的一批测试用例,并利用这些测试用例去执行程序,发现程序错误的过程。
二、软件测试对象
1.软件测试贯穿于软件定义和开发的整个期间。需求分析、概要设计、详细设计、以及程序编码的各个阶段所得到的文档以及源程序都是软件测试的对象。
三、软件测试种类
1.黑盒测试:基于软件需求。
2.白盒测试:基于软件内部结构。
3.单元测试:主要测试软件模块的源代码。
4.集成测试:将一些“构件”集成一起,测试是否正常运行。这的“构件”可以是程序模块、客户机-服务器程序等待。
5.功能测试:测试软件的功能是否符合功能性需求,通常采用黑盒测试方法。
6.系统测试:测试软件是否符合所以需求,包括功能性的和非功能性的,通常采用黑盒测试方法。
7.回归测试:指错误被修正或者软件功能、环境发生变化后进行的重新测试。困难在于不好确定哪些内容应该重新测试。
8.验收测试:由客户或最终用户执行,测试软件是否符合测试规格说明书。
9.还有负载测试、压力测试、性能测试、易用性测试、安装和反安装测试、安全性测试、兼容性测试、Alpha测试、Beta测试等。
四、软件测试基本流程
1.制定测试计划。
2.制定测试用例。
3.执行测试。
4.攥写测试报告。
5.消除软件缺陷。
五、软件测试常识和经验
1.测试能提高软件质量,但是软件质量的提高不能依赖测试。
2.测试只能证明缺陷存在,不能证明缺陷不存在。
3.80-20原则:80%的缺陷聚集在20%的模块里。
4.测试应当循序渐进。