当前位置: 首页 > news >正文

推荐 南昌网站建设网站开发设计素材

推荐 南昌网站建设,网站开发设计素材,最好的装饰公司营销型网站,论文网站建设与运营seldom之数据驱动 如果自动化某个功能,测试数据不一样而操作步骤是一样的,那么就可以使用参数化来节省测试代码。 seldom是我在维护一个Web UI自动化测试框,这里跟大家分享seldom参数化的实现。 GitHub:GitHub - SeldomQA/seld…

seldom之数据驱动

如果自动化某个功能,测试数据不一样而操作步骤是一样的,那么就可以使用参数化来节省测试代码。

seldom是我在维护一个Web UI自动化测试框,这里跟大家分享seldom参数化的实现。

GitHub:GitHub - SeldomQA/seldom: Seldom automation testing framework based on unittest

参数化测试用例

import seldom
from seldom import dataclass BaiduTest(seldom.TestCase):@data([("case1", "seldom"),("case2", "selenium"),("case3", "unittest"),])def test_baidu(self, name, keyword):"""参数化测试用例:param name: 用例名称:param keyword: 搜索关键字"""self.open("https://www.baidu.com")self.type(id_="kw", text=keyword)self.click(css="#su")self.assertTitle(keyword+"_百度搜索")if __name__ == '__main__':seldom.main()

通过@data() 装饰器来参数化测试用例,用法非常简单。

将测试数据写代码里面并不是特别优雅的方式,尤其在数据比较多长时间。那么通过数据文件管理可能会更加优雅。

读取csv文件

seldom支持csv文件的数据解析为 list。

读取CSV文件中的数据。

import seldom
from seldom import data
from seldom import csv_to_listclass YouTest(seldom.TestCase):@data(csv_to_list(file="data.csv", line=2))def test_login(self, username, password):"""a simple test case """self.open("https://login.xxx.com")self.type(id_="user", text=username)self.type(id_="pawd", text=password)# ...

csv_to_list() 方法CSV文件内容转化为list。

  • file: 指定csv测试文件。
  • line: 指定从第几行开始读取,默认第一行。

CSV文件不支持多个Sheet,这就要求一个组数据必须创建一个单独JSON文件,如果数据多了之后就需要创建许多单独的JSON文件,这就不太方便了。

读取excel文件

seldom支持excel文件的数据解析为list。

Excel文件可以创建多个Sheet标签,通过不同的标签管理数据。

import seldom
from seldom import data
from seldom import excel_to_listclass YouTest(seldom.TestCase):@data(excel_to_list(file="data.xlsx",  sheet="login", line=2))def test_login(self, username, password):"""test login"""self.open("https://login.xxx.com")self.type(id_="user", text=username)self.type(id_="pawd", text=password)@data(csv_to_list(file="data.xlsx", sheet="search", line=2))def test_search(self, keyword):"""test search """self.open("https://www.baidu.com")self.type(id_="kw", text=keyword)

excel_to_list() 方法excel文件数据转化为list。

  • file : 指定excel文件的绝对路径。
  • sheet: 指定excel的标签页,默认名称为 Sheet1。
  • line : 指定从第几行开始读取,默认第一行。


#### 读取JSON文件

seldom支持将JSON文件的数据解析为 list/dict。

json 文件:

{"search":[["python"],["seldom"],["unittest"]],"login":  [["admin", "admin123"],["guest", "guest123"]]
}

一个JSON文件里面同样可以表示不同格式的的文件。

import seldom
from seldom import data
from seldom import json_to_listclass YouTest(seldom.TestCase):@data(json_to_list(file="data.json", key="login"))def test_login(self, username, password):"""test login """self.open("https://login.xxx.com")self.type(id_="user", text=username)self.type(id_="pawd", text=password)@data(csv_to_list(file="data.json", key="search"))def test_search(self, keyword):"""test search """self.open("https://www.baidu.com")self.type(id_="kw", text=keyword)

json_to_list() 方法JSON文件数据转化为list/dict。

  • file : 指定JSON文件的绝对路径。
  • key: 指定字典的key,默认不指定解析整个JSON文件。

使用第三方ddt

seldom也支持第三方ddt库。

GitHub:GitHub - datadriventests/ddt: Data-Driven Tests for Python Unittest

安装:

> pip install ddt

创建测试文件test_data.json

{"test_data_1": {"word": "seldom"},"test_data_2": {"word": "unittest"},"test_data_3": {"word": "selenium"}
}

在 seldom 使用ddt

import seldom
from ddt import ddt, file_data@ddt
class YouTest(seldom.TestCase):@file_data("test_data.json")def test_case(self, word):"""a simple test case """self.open("https://www.baidu.com")self.type(id_="kw", text=word)self.click(css="#su")self.assertTitle(word + "_百度搜索")if __name__ == '__main__':seldom.main()
http://www.yayakq.cn/news/446755/

相关文章:

  • 网站未备案怎么访问杭州网站做的好公司名称
  • 网站建设 福步手机网站懒人模板
  • 网站云主机吗公司做分享网站好吗
  • 个人网站备案需要几天html转wordpress教程
  • 域名对网站seo的影响网站建设工单系统
  • 网站建设程序都有哪些新网站前期seo怎么做
  • 做影视网站怎么挣钱网站建设平台案例
  • 怎样做网站收录凡客诚品图片
  • 广州市 住房建设局网站首页濂溪区建设局网站
  • 网站论坛模板微信小程序下载app
  • 如何建立个人网站网站设计工具更好的做网站
  • 建设投票网站的目的个人网站备案名称举例
  • 创意设计公司网站app开发公司 上海
  • 可以做书的网站餐饮型网站开发
  • ios网站开发工具有哪些重庆建网站价格表
  • 电子商务网站制作公司重庆市建设工程交易中心
  • dede学校网站模板下载购买域名要多少钱
  • 多语种网站建设开发网站维护和推广方案
  • html5手机网站开发解决方案企业网站
  • 青海格尔木建设局网站wordpress中文文档下载
  • 网站内页301珠宝怎么做网站
  • 高校英文网站建设 文献综述Qq wordpress
  • 学校网站建设维护投标方案微信上微网站怎么做的吗
  • 家庭服务网站的营销策略成都网站建设公司哪家专业
  • 贵州两学一做教育网站百度快照推广效果怎样
  • 网站编辑面试wordpress前台403
  • 温州网站制作哪家好静态网页代码大全
  • 上海高端网站设计公司价格网站建设就选
  • 装饰公司简易手机网站建设网站 报告书
  • 如何做网站网站的教程微信拼团小程序怎么做