首页 > 其他 > 详细

自动化测试中的数据驱动和关键字驱动

时间:2019-11-23 12:47:29      阅读:146      评论:0      收藏:0      [点我收藏+]

a.数据驱动:从某个数据文件(odbc,csv,excel,txt)中读取输入输出的测试数据,然后通过变量传入手动测试脚本中,通过这些数据来验证测试数据

                     程序和数据分离,测试数据存放到一个文件中,脚本是另外一个文件

 

b.关键字驱动:从面向对象角度出发,同样业务逻辑编写成一个类或者函数作为关键字被不同的脚本调用

                        每个步骤对应文件中一行内容

 

c.DDT:官网参考:https://ddt.readthedocs.io/en/latest/

              Data-Driven Tests缩写

             包含类的装饰器ddt和两个方法装饰器:

data 直接输入数据
file_data 从文件中获取测试的数据
ddt.data 装饰测试的方法,参数是一系列的值
ddt.file_data 装饰测试方法,参数是文件名
ddt.unpack 传递的是复杂数据结构时候,比如元组字典,添加unpack之后,ddt会自动把元素或者列表对应到各个参数上

使用前必须安装好ddt模块:pip install ddt

#coding=utf-8
import unittest
from selenium import webdriver
from ddt import ddt,data,unpack,file_data
import time
@ddt
class SearchDDT(unittest.TestCase):
     def setUp(self):
          self.driver=webdriver.Chrome()
          self.driver.implicitly_wait(10)
          self.driver.get("https://www.xx.com")
     # @data((‘java‘))              #1.直接传入参数
     # @data((‘python‘),(‘java‘))   #2.传入多个参数
     # @data({‘search_value‘:‘python‘},{‘search_value‘:‘test‘})
     # @unpack
     @file_data(test.json)
     def test_search(self,search_value):
          search_text=self.driver.find_element_by_id(kw)
          search_text.clear()
          search_text.send_keys(search_value)
          self.driver.find_element_by_id(su).click()
          time.sleep(2)
     def tearDown(self):
          self.driver.quit()
if __name__ == __main__:
     unittest.main()

 

自动化测试中的数据驱动和关键字驱动

原文:https://www.cnblogs.com/yuxiaofeng/p/11915647.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!