资料来自《selenium2自动化测试实战——基于python语言》

  自动化测试的模型大家了解多少?下面我们一起来看看有哪些自动化测试模型,他们之间的特点是什么。

  • 线性测试
    通过录制或者编写应用程序的操作步骤生成的线性脚本,来实现应用程序的功能检测模型为线性测试模型

     1 # __Author__:"Jim_xie"    
     2 # __version__: "3.7.0"
     3 from selenium import webdriver
     4 from time import sleep
     5 from selenium.webdriver.common.keys import Keys
     6 
     7 print(\'打开浏览器\')
     8 dr = webdriver.Firefox()
     9 print(\'打开163音乐网站\')
    10 dr.get(\'http://music.163.com\')
    11 print(\'找到搜索框\')
    12 dr.implicitly_wait(3)
    13 ele_search = dr.find_element_by_name(\'srch\')
    14 print(\'搜索苏运莹\')
    15 ele_search.send_keys(\'苏运莹\',Keys.ENTER)
    16 sleep(3)
    17 print(\'保存截图\')
    18 dr.save_screenshot(\'c:/Temp/\'+dr.title+\'.png\')
    19 print(\'关闭浏览器\')
    20 dr.quit()

    View Code

    特点:
    1. 开发成本高,测试用例之间可能会存在重复操作
    2. 维护成本高,因有重复操作,如果需要修改重复操作又会产生重复的修改操作
    针对重复操作部分,有没有一个更好的方法能够改良呢?让重复部分该改动一次即可达成目的。

  • 模块化驱动测试
    将重复操作写成可以调用的模块,使用的时候,直接调用。
    特点:
    1. 提高了开发效率,不用重复编写重复的操作
    2. 简化了维护测试用例的复杂度
    针对重复操作,比如说登录,现在我们要测试不同用户登录,还是得重写登录内容。
  • 数据驱动测试
    这时候引入数据的参数化,即将重复步骤的可变部分用参数代替,下次再调用的话,传参即可。
    特点:
    进一步增强了脚本的复用性
    针对重复步骤的调用,除了可以使用模块化驱动测试,按不同顺序调用模块外,还可以使用其他方法吗?
  • 关键字驱动测试
    市面上关键字驱动的工具不少,典型的有QTP、Robot Framework(RIDE)、selenium IDE

    常用的自动化测试模型就是以上几种,仅供参考,谢谢!

     

版权声明:本文为AJim-ggsddu-999原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/AJim-ggsddu-999/p/9555218.html