1、什么是软件测试?
①为了发现程序中的缺陷或错误
②为了检验产品是否符合用户需求
③提高用户的体验
2、软件测试的目的?
①模块测试的目的是发现程序模块与其接口规格说明之间的不一致
②功能之策的目的是为了证明程序未能符合其外部规格说明
③系统测试的目的是为了证明软件产品预期初始目标不一致
3、软件测试的主要原则
①测试应当尽早进入(最好是需求分析阶段就介入)
②所有的测试都应当围绕着需求来进行
③无法做到完全测试,程序的缺陷是找不完的,应当适当终止测试
④测试过程中应当及时保存文档并备份
⑤应避免开发自己测试程序。因其思维局限性,可能导致测试深度以及广度不够,应当交由第三方或专业测试进行,从而提高测试的质量
4、软件的定义
软件=程序+数据+文档
5 、软件测试的分类
1)测试阶段划分:单元测试、集成测试、系统测试、验收测试(正式验收测试、Alpha内测、Beta公测)
2)测试技术划分:黑盒测试、白盒测试、灰盒测试
3)被测对象划分:动态测试、静态测试(文档检查、UI检查、代码审查)
4)测试手段划分:手工测试、自动化测试
5)测试内容划分:功能测试、安全测试、性能测试、界面测试
①负载测试:找到系统性能拐点以及最大有效并发值
②压力测试:选取负载最大有效并发值进行长时间的运行
6)其他测试:探索性测试、自由测试(测试思维的转换)
①冒烟测试:对每一个修复的版本进行测试,以确保基本功能的正常运行
②回归测试:开发提交版本后,重新进行测试以确认没有新缺陷或错误