软件测试
一、软件测试基本概念
(1)、软件测试的定义
软件测试是从前期需求文档的评审,到中期测试用例设计再到测试执行,再到后期问题单的提交和关闭等一系列的测试过程。
(2)、软件错误的定义
指实际运行结果和预期(需求文档的结果)不一致。当然测试人员如果有发现影响用户使用和体验的任何地方都可以记录下来。
通常有一个8:2原则,即百分之80的错误集中在百分之20的模块
(3)、测试分类
按照测试阶段:
单元测试–>白盒测试–>开发人员测试
集成测试–>白盒测试为主(黑盒为辅)–>开发人员
系统测试–>黑盒测试–>测试人员
(对软件的界面、功能、性能、安全性、兼容性、易用性进行测试)
验收测试–>黑盒测试–>用户
用户的测试与系统测试相似
二、需求文档的评审
通常的需求文档指定流程如下
评审文档的要求:
1、正确性
2、明确性
3、完整性
4、限制性
5、优先级
6、一致性
百分之50以上的软件缺陷是前期的需求评审没有做好而造成的
评审需求文档的原因
1、对于一些错误和不足可以及时提出,便于修正需求文档
2、保证产品人员、开发、测试三方对需求文档的理解一致。
3、测试人员需要深刻理解文档,便于制定正确的标准。
拿到通过的需求文档后,测试人员就可以着手编写测试计划和测试用例。
三、软件测试计划
(1)、测试范围
需要规定测试的功能性需求和非功能性需求,是否需要进行外观界面测试、功能测试、易用性测试、兼容性测试、性能测试、安全性测试或者其他测试等。
(2)、测试环境
需要指定软件测试的软件环境和硬性环境,例如对邮箱做系统测试时:
软件环境:window 10系统、IE11了浏览器等
硬件条件:酷睿i5处理器、三星8G的运行内存等
(3)、测试策略
1、测试依据:主要是需要文档和测试用例
2、测试的准入标准:在进行大量的系统测试前,会对系统进行冒烟测试等。
例如:选取300个系统测试点中的30个点,当30个点都没问题时才会进行全面测试
2、测试工具选择:对于bug提交选择“禅道”,对于自动化选择“selenium”等
3、测试的重点及方法:应当标明要测试的重点模块和区域、测试的优先级以及所使用的测试方法。
(4)、测试管理
测试管理主要是指测试任务的分配、时间进度与的安排、沟通方式等
(5)、测试风险
1、不透彻理解寻求文档:会导致测试人员对软件功能模块理解存在偏差。
2、估计不足测试时间:每个测试人员应当按照规定时间完成测试,不然会影响整个测试工作精度,造成推迟测试计划的风险。
3、测试执行不到位:不能因为有些功能模块不重要就不去执行和分析它。不能心存侥幸,测试人员要有认真负责的态度和优秀的专业素养
(6)、模板
1、标志文档
本文档是针对xx公司开发的XYC邮箱V1.0进行的黑盒测试的整体测试计划
2、测试目的
本次测试是针对XYC邮箱软件项目进行的系统测试,目的是判定该系统是否满足需求文档的各项规定
3、测试范围
序号 | 测试范围 | 说明 |
---|---|---|
1 | 外观界面测试 | 检查XYC邮箱的外部界面是否符需求文档中的界面规定,是否美观、合理和人性化 |
2 | 功能测试 | 根据文档检查XYC邮箱的主要功能是否能正确实现 |
3 | 易用性测试 | 检查XYC邮箱是否操作简单,易用,是否符合通用的操作习惯 |
4 | 兼容性测试 | 检查XYC邮箱和市面上主流浏览器的兼容性,例如qq浏览器、Firefox60等 |
5 | 安全性测试 | 检查XYC邮箱是否达到了需求文档中的安全性要求,是否存在安全隐患 |
6 | 性能测试 | 检查XYC邮箱是否达到了需求文档中所定义的性能需求 |
4、测试环境
1)软件环境
终端类型 | 操作系统 | 应用软件 |
---|---|---|
PC | windows 10 | IE11、360浏览器、Firefox60、QQ浏览器、搜狗浏览器 |
2)硬件环境
终端类型 | 机器名称 | 硬件配置 |
---|---|---|
pc | 联想商务机 | cpu:酷睿i5、内存:三星8GB、硬盘:三星500GB |
5、测试策略
6、测试管理
7、测试风险