软件测试基础知识总结

1、软件测试阶段有哪些任务

①、制定测试大纲(测试计划)

②、制作测试数据(测试方案)

③、单元测试(程序测试,一般由开发人员进行)

④、功能测试

⑤、性能测试

⑥、集成测试(子系统测试)

⑦、系统测试

⑧、验收测试

⑨、测试报告及向下阶段提交系统运行、维护用户手册

 

2自动化测试

概念:为了提高工作效率,节省人力和成本,把人为驱动的测试转化为机器执行

 

3、自动化测试的过程

  1. 需求分析
  2. 测试计划
  3. 框架搭建(附带工具选择)
  4. 测试用例设计(编写测试用例或开发测试脚本,并文档化)
  5. 测试——调试测试(针对自动化测试脚本)
  6. 评估(评估测试结果并改进测试过程)

 

4、自动化测试技术

 录制/回放(依赖工具)

 脚本技术

 数据驱动(data driven)的自动化测试

 关键字驱动(keyword driven)的自动化测试

 业务驱动

 

5、自动化测试方案选择需要考虑的方面

①、项目的影响(能否帮助项目进度、覆盖率、风险)

②、复杂度(是否容易实现,包括数据和其他环境等)

③、时间(实现自动化需要多少时间)

④、早期需求和代码的稳定性(需求或代码能否证明是在范围内变化的)

⑤、维护工作量(代码能否能长期保持相对稳定)

⑥、覆盖率(自动化测试能否覆盖程序的关键特性和功能)

⑦、资源(是否拥有足够的人力、硬件和数据资源来运行自动化测试)

⑧、执行(负责执行的人员是否有足够的技能和时间去运行)

⑨、自动化测试管理

 

6、设计用例的策略

①、首先进行等价类划分,包括输入和输出条件,减少工作量提高效率

②、边界值分析,发现错误的能力最强

③、错误推断法,补充用例(这个凭经验)

④、对照需求和业务场景逻辑,检查用例

⑤、如果需求说明含有输入条件,设计开始就用到因果图和判定表驱动法

⑥、参数配置类的软件,要用正交实验法

⑦、功能图法,不同时期条件的有效性来设计数据

⑧、业务流清晰的系统,采用场景法

 

6.1等价类

①、将所有可能输入数据(有效和无效)划分为若干个等价类,选取代表性的数据当做  测试用例,保证完整性和代表性

有效等价类:合理的有效的输入集合

无效等价类:无效的没有意义的输入集合,检查程序异常

②、等价类划分方法

按照区间、数值、集合、限制条件、处理方式划分

 

6.2边界值

对输入或输出的边界值进行设计(5/7原则)

 

6.3因果图

简化逻辑关系,操作步骤较复杂

 

6.4判定表驱动法

针对不同存在条件、动作关系或者因果关系的设计用例方法

4大组成部分:条件桩,条件项;动作桩,动作项

 

6.5场景法

事件触发的情景生成场景(同一件事不同触发顺序和处理结果形成事件流)

 

6.6功能图法

用功能图(流程图)形象的表达操作流(状态迁移图+布尔函数组成)

需要依靠判定表因果图表示逻辑,是黑盒+白盒混合用例的设计方法

 

6.7错误推断法

基于以往的经验和出现的错误,推测软件可能存在的缺陷和错误,针对性的设计用例

 

6.8正交实验法

从大量数据中挑选适量的有代表性的,合理设计用例

 

测试用例

1、什么是测试用例

一组由前提条件、输入、执行条件、预期结果等组成,以完成对某个特定需求或者目标测试的数据,体现测试方案、方法、技术和策略的文档

 

2、为什么要写测试用例

科学有效的对测试步骤进行组织规划,方便管理,记录

 

3、测试用例主要包含哪些内容

编号、日期、设计和测试人员、优先级、标题、目标、环境、输入数据/动作、预期结果

 

4、编写测试用例需要什么

软件需求设计说明书、软件模板

 

5、设计测试用例的注意事项

从高到低,独立性,与功能一一对应,根据需求设计,由有经验的人员设计

 

6、设计测试用例的原则

有模板,正确性,代表性,可判断性,重现性,详细准确清晰的步骤,符合规范

 

7、用例的管理工具

市场上的用例缺陷管理工具很多:蛰了列举几个:mantis、redmine、jira、bugzilla、禅道等

 

8、用例的管理过程

编写→评审(修改→再次评审)→使用→保存管理→维护/升级

 

9、测试用例内容

目标的描述、环境、输入输出数据/动作、步骤、预期结果、备注等

 

     

 

posted @ 2019-10-09 16:50  云深不知处!  阅读(264)  评论(1编辑  收藏  举报