开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第29天,点击查看活动详情
软件测试的原则
1、测试证明软件存在缺陷 :无论执行什么样的测试操作都能证明当前软件是有缺陷的
2、不能执行穷尽测试:有些功能是没有办法将所有的测试情况都罗列出来,所以任何的测试操作都有结束的时间
3、缺陷存在集群现象(80%的bug来自于20%的模块):对于软件功能说,核心功能占20%,非核心是80%。在实际工作中我们会集中测试20%的核心功能,所以这个部分发现缺陷的几率就会高于80%。因此我们就会遇到缺陷都集中在20%功能模块里的现象。
4、某些测试需要依赖特殊环境
5、测试应尽早介入(应当尽早的不断地进行软件测试):为了更多的发现和更好的解决软件中的缺陷,我们追求测试工作尽早的开展
6、杀虫剂现象:同样一个测试用例不能重的执行多次,因为软件会对他产生免疫。
7、不存在缺陷谬论:任何软件不可能是完美的
8、测试人员应该妥善保存测试过程当中所产生的文档
9、测试人员应该根据测试计划、测试用例进行测试,杜绝测试的随意性。
测试对象 程序+数据及结构+文档
每个阶段相应的测试对象 1、需求分析阶段:各种需求规格说明书。
2、软件架构设计:API接口文档(接口测试)
3、编码实现阶段:源代码(白盒测试、单元测试)
4、系统功能使用:软件功能主体(当前行业做的最多的一种测试)
测试级别 1、单元测试(白盒测试):对类、函数、组件进行测试(参考文档:详细设计说明书)
2、集成测试(接口测试)(灰盒测试):将多个单元模块组合、然后验证他们之间的连通性。(参考文档:概要设计文档)
3、系统测试(黑盒测试):在集成测试基础上对软件及周边作主体测试(功能,性能,安全等等特性测试),这是当前行业最多的一种测试。由测试人员充当用户,然后对软件功能主体进行测试
4、验收测试:(黑盒测试)
(1)Alpha (a)测试 -内测
(2) bata (B)测试 - 公测
(3)UAT( user acceptance test )测试---- 由客户派出对于业务非常精通的人员来使用该软件,从而对功能进行测试。
系统测试分类 (测试项) 1、功能测试
2、兼容性测试
3、安全测试
4、性能测试:稳定性测试、负载测试、可靠性测试
5、界面测试
6、一致性测试
7、可移植性测试
8、容灾性测试
9、可配置性测试
10、可交互性
11、可用性
12、绿色健康
按测试方法分类 白盒测试:(结构性测试) (逻辑驱动测试)
黑盒测试:(数据驱动测试)(系统测试)
灰盒测试:介于两者之间 (接口测试)
按测试对象是否执行分类 1、静态测试:指的就是测试不执行
2、动态测试:将软件运行在真实的使用环境中进行测试
按测试手段进行分类 1、手工测试
2、自动化测试
软件质量的六大特性 1、功能性
2、易用性
3、可靠性
4、效率性
5、可维护性
6、可移植性
软件测试流程 1、需求分析
2、测试计划
3、测试设计:测试方案、测试用例、评审记录
4、配置环境(搭建测试环境)
环境=软件+硬件+网络
软件测试环境包含哪些? 软件:操作系统,应用软件,数据库软件
硬件:系统配套硬件
网络:
5、执行测试用例:执行结果、bug清单
冒烟测试(预测试、通电测试、接收测试)
6、回归测试及缺陷跟踪
7、输出测试报告
8、测试结束