我所知道的自动化测试模型

发表于:2014-3-10 11:28

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:虫师    来源:51Testing软件测试网采编

  这一篇我的偶像Jackei 致敬:
  (关于偶像的问题,发表一下自己的看法,我觉得每个人都应该有“偶像”,偶像是标杆和奋斗目标。关于有些人拿比尔盖茨 和 自己当偶像的,要么活在梦里,要么活在自己的世界,我只能 呵呵 了。)
  其实,从刚开始做测试就有学习自动化(基于UI 的web自动动化测试),理解上一直处于非常皮毛的状态。再次的深入学习并实践自动化大概从半年前开始。边学习边总结是我的一贯学习方式。
  《我所知道的软件测试自动化》- 关键字驱动的过去和未来
  Jackei 的这篇文章我了好几遍,虽然将的内容并不高深,但随着自己自动化水平的提高,每次看完也会一新体会。基于这篇文章,扩展的来谈一下自己对几种自动化测试模型的理解。
  线性测试
  通过录制或编写脚本,一个脚本完成用户一套完整的操作,通过对脚本的回放来进行自动化测试。
  这是早期进行自动化测试的一种形式。
  脚本一
from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get("http://passport.cnblogs.com/login.aspx?ReturnUrl=http://www.cnblogs.com/fnng/admin/EditPosts.aspx")
driver.find_element_by_id("tbUserName").send_keys("admin")
driver.find_element_by_id("tbPassword").send_keys("123456")
driver.find_element_by_id("btnLogin").click()
......
driver.quit ()
  脚本二
from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get("http://passport.cnblogs.com/login.aspx?ReturnUrl=http://www.cnblogs.com/fnng/admin/EditPosts.aspx")
driver.find_element_by_id("tbUserName").send_keys("user")
driver.find_element_by_id("tbPassword").send_keys("456123")
driver.find_element_by_id("btnLogin").click()
......
driver.quit ()
  通过上面的两个脚本,我们很明显的发现它的问题:
  一个用例对应一个脚本,假如界面发生变化,用户名的属性发生改变,不得不需要对每一个脚本进行修改,测试用例形成一种规模,我们可能将大量的工作用于脚本的维护,从而失去自动化的意义。
  这种模式下数据和脚本是混在一起的,如果数据发生变也也需要对脚本进行修改。
  这种模式下脚本的可重复使用率很低。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号