为什么要实施自动化测试?
应用系统日趋复杂的客观要求
一个不可避免的问题是,应用系统变得日趋复杂,并且造成了更大的风险。测试消耗的成本越来越高,花费的时间也越来越长。而成本与时间是有限的。为了在限制的成本与时间范围内,控制发布的软件产品的质量,测试人员被要求在尽量短的时间内对软件进行足够的测试。
避免重复测试的主观要求
迭代式开发过程:目前的软件开发或多或少使用了迭代式开发过程,这就导致了我们需要进行一轮又一轮的测试。
回归测试:为了检验软件版本是否正确,或者当发现软件中出现了一个或多个以前曾经被修复的缺陷时,不可避免的需要进行回归性的测试。
自动化测试实施失败的因素?
1.期望值过高。就像管理人员要求完全测试一样,期望100%的测试自动化,也同样是一个不现实的需求。
1.自动化的收益和成本:
成本=用例的开发+用例的维护
收益 = 重复运行次数 (时间) + 节约的时间
自动化测试的成长过程?
Testing often begins as freestyle, expands toward scripted.
测试总是从自由式的探索开始,朝脚本化方向扩张
自动化测试的应用时机?
重头戏
测试方案设计
1 自动化测试的功能方案设计的流程:
操作对象—>对象属性—>功能实现—>结果验证
2 自动化测试的功能方案设计操作用例图:
Web对象的识别—Watir-WebDriver
· 输入框 input
· 按钮 button
· 下拉框 select
· 链接 link
· 点击 click
· 单选 radio
· 多选 checkbox
· 模拟键盘 send_keys :enter