软件测试
什么是软件测试
- 使用人工或者自动化的方式运行程序,来验证程序与需求之间的差异,或者是实际结果与预期结果的偏差
目的
- 发现缺陷
- 验证结果是否正确
方法
- 运行程序
- 实际结果和预想结果对比
黑盒测试和白盒测试
黑盒测试
- 黑盒测试时是不考虑程序内部的结构和处理过程
- 根据软件说明书来检查是否符合预期的功能要求。
- 黑盒测试是在程序前端接口进行的测试,又称为功能性测试
- 黑盒测试比较简单,测试人员不需要了解软件代码。测试人员只需要运行程序,按照程序的实现文档一步一步测试即可
白盒测试
- 白盒测试是黑盒测试截然不同,测试人员需要了解程序的内部结构
- 也就是测试人员必须对整个程序有所了解,那么必须了程序的内部结构
- 白盒测试又称为结构测试,它需要了解程序内部的设计结构及具体的代码实现过程,并设计相应的测试用例对程序进行调试,程序是否有bug
测试工程师工作职责
- 找缺陷,提交缺陷,跟踪缺陷
- 运行程序,执行测试用例,进行功能测试和非功能测试
- 设计并编写测试用例,用例评审等
- 测试总结,出具测试报告
- 测试计划和测试方案的编写
什么是测试用例
- 测试用例(Test Case)是指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略
- 内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档
- 测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求
测试用例写什么
- 测试数据,操作步骤,预计结果,实际结果
- 前置条件,用例标题,编号,重要级别,编写人
测试用例的写作规范
测试数据
- 输入项及取值
- 需要输入项的名称对应取值
- 建议所有的输入项都应该体现在用例的测试数据项中
- 一个用例是一组数据的测试
- 设计测试数据的时候,可以选择精确数据也可以选择范围数据
- 在设计测试数据的术后,既要设计有效数据,也要设计无效数据
操作步骤
- 同一个功能点,操作步骤理论上是相同的
- 操作步骤不要写的太长,一般建议是一个页面的输入或者一个提交等
- 操作步骤中不要写数据,只要写数据项就行了
预期结果
- 期望结果,同一个数据智能有一种预测结果
- 预测结果包括总体结果和具体说明
前置条件
- 在测试的时候需要在一定条件下进行,这个条件是前置条件
- 没有前置条件:无
标题
- 标题的含义是简明扼要的描述这个测试用例
- 用例的标题不可能相同
- 标题简单说就是核心数据和核心的预期结果的合并
- 有效用例:核心数据+预期结果
- 无效用例:导致失败的数据+预期结果
编号
- 编号要见名知意
- 按功能模块命名
重要级别
- 根据用户的实用频率来划分
- 根据定义方式来划分
- 对系统的影响来划分
- 根据是否安全划分
- 等等