自动化测试模式简介

 资料来自《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

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

原文地址:https://www.cnblogs.com/AJim-ggsddu-999/p/9555218.html