为什么要实施自动化测试?
一个不可避免的问题是,应用系统变得日趋复杂,并且造成了更大的风险。测试消耗的成本越来越高,花费的时间也越来越长。而成本与时间是有限的。为了在限制的成本与时间范围内,控制发布的软件产品的质量,测试人员被要求在尽量短的时间内对软件进行足够的测试。
迭代式开发过程:目前的软件开发或多或少使用了迭代式开发过程,这就导致了我们需要进行一轮又一轮的测试。
回归测试:为了检验软件版本是否正确,或者当发现软件中出现了一个或多个以前曾经被修复的缺陷时,不可避免的需要进行回归性的测试。
自动化测试实施失败的因素?
成本=用例的开发+用例的维护
收益 = 重复运行次数 (时间) + 节约的时间
自动化测试的成长过程?
Testing often begins as freestyle, expands toward scripted.
测试总是从*式的探索开始,朝脚本化方向扩张
自动化测试的应用时机?
重头戏
测试方案设计
操作对象—>对象属性—>功能实现—>结果验证
2 自动化测试的功能方案设计操作用例图:
Web对象的识别—Watir-WebDriver
•输入框 input
•按钮 button
•下拉框 select
• 链接 link
•点击 click
•单选 radio
•多选 checkbox
•模拟键盘 send_keys :enter
自动化测试开放平台框架设计
自动化测试框架的用例设计示例
① [Info]:代表该用例执行成功![error]代表失败![warn]代表警告!
② TiStone:代表执行用例名称
③ Login successful!:描述或捕获的value值,以“!”结尾
④ 001011:返回码
被测系统:需要测试的系统
Ruby节点:实现前端与底层ruby关联(可选)
提供创建用例节点
提供上传指定节点自动化用例