自动化测试各种各样的测试种类:
功能(黑盒)自动化测试、功能(白盒)自动化测试、性能测试、压力测试、GUI(图形用户界面)测试、安全性测试。
自动化测试优点:
- 回归测试更方便、可靠
- 2.可运行更多、更繁琐的测试
- 可执行一些对于手工测试来说相当困难或根本做不到的测试
- 更好地利用资源,使资源的使用更有价值
- 具有一致性和可重复性的特点
- 自动化测试脚本完全具有复用性
- 使软件更有信任度
- 多环境下测试
自动化测试劣势:
- 永远不可能完全取代手工测试
- 无法完全保证测试的正确性
- 手工测试能发现的缺陷比自动化测试多
- 对测试质量的依赖性极大
- 测试自动化可能会制约软件开发
- 自动化测试工具是死的,它本身没有任何想象力
- 成本投入过高,风险大
- 自动化测试对测试人员的技术要求较高,对测试工具同样有一定要求
何时适合引用自动化测试:
- 项目周期长,系统版本不断
- 需求变更不频繁
- 系统中的测试对象基本可以正常识别
- 系统中的不存在大批量第三方控件
- 需要反复测试,如可靠性测试需要进行上千次的系统测试
何时避免展开自动化测试:
- 项目周期短,需求变更频繁
- 再软件版本还没有稳定的情况下
- 没有明确的项目测试自动化计划、措施和管理
- 领导不支持
- 多数对象无法识别以及脚本维护频繁与艰难,二者有其一,自动化测试注定失败
自动化测试流程:
就是软件开发的过程,需要经历各类分析、测试计划、框架及测试用例设计、脚本开发、测试执行、提交报告、脚本维护、版本控制等一系列繁琐的过程
自动化测试设计:
- 自动化测试框架:以实用、适用、扩展性强、使用范围广、稳定、思想先进,绝对不能以“强大”却又背道而驰的可用功能为主
- 自动化测试用例
2.1筛选手工测试用例的过程
2.2转换手工测试用例的过程
2.3新增&补充自动化测试用例的过程
自动化测试脚本分类:
- 线性脚本:通过录制直接产生的线性执行脚本
- 结构化脚本:具有顺序、循环、分支等结构的脚本
- 可共享脚本:可以被多个测试用例使用,被其他脚本调用的脚本
- 数据驱动脚本:测试数据和业务流程控制分离的脚本,通过读入数据文本来驱动流程进行的脚本
- 关键字驱动脚本:脚本、数据、业务分离,数据和关键字在不同的数据表中,通过关键字来驱动测试业务逻辑。关键字驱动脚本的特点是,它是看起来更像描述一个测试用例在做什么,而不是如何做
自动化测试用例设计详解:
- 自动化测试用例的范围往往是核心业务流程或者重复执行率较高的
- 自动化测试用例的选择一般以“正向”(正常业务流程,反向为异常业务流程)为主
- 不是所有的手工测试用例都可以使用自动化测试来实现的(硬件设备辅助)
- 手工测试用例可以不用回归到原点,而自动化用例往往是必须的
- 自动化测试用例和手工测试用例不同,不需要每个步骤都写预期结果(无法检查每项结果)