unittest批量执行测试用例
现有四个测试用例分别在两个.py文件中,如何执行这些文件?
unittest中有这样处理:unittest.TestLoader().discover()
第一个文件test_case1.py
from selenium import webdriver
import unittest class Baidu_Link(unittest.TestCase): def setUp(self) -> None:
self.driver = webdriver.Chrome()
self.driver.get("http://www.baidu.com/") def tearDown(self) -> None:
self.driver.quit() def test_baidu_news(self):
''''点击百度首页的新闻,看是否可以正常跳转'''
self.driver.find_element_by_link_text("新闻").click()
self.assertEqual(self.driver.current_url, "http://news.baidu.com/") def test_baidu_map(self):
'''点击百度首页的地图,看是否可以正常跳转'''
self.driver.find_element_by_link_text("地图").click()
self.assertEqual(self.driver.current_url, "https://map.baidu.com/@13225221.26,3748918.53,12z") if __name__ == "__main__":
unittest.main(verbosity=2)
第二个.py文件:test_case2.py
import unittest
from selenium import webdriver class Baidu_search(unittest.TestCase): def setUp(self):
self.driver = webdriver.Chrome()
self.driver.get("http://www.baidu.com") def tearDown(self):
self.driver.quit() def test_baidu_enbale(self):
'''测试百度首页的输入框可编辑'''
su = self.driver.find_element_by_id("kw")
self.assertTrue(su.is_enabled()) def test_baidu_search(self):
'''测试百度首页的输入框可以搜索'''
search = self.driver.find_element_by_id("kw")
search.send_keys("大数据")
self.driver.find_element_by_id("su").click()
self.assertEqual(search.get_attribute("value"), "大数据") if __name__ == "__main__":
unittest.main(verbosity=2)
这两个文件怎么批量执行?
建立新的.py文件alltest.py
import unittest
import os def allTest():
suite = unittest.TestLoader().discover(
start_dir=os.path.dirname(__file__),#文件地址
pattern="test_*.py",#文件类型
top_level_dir=None)
return suite def run():
unittest.TextTestRunner(verbosity=2).run(allTest()) if __name__ == "__main__":
run()
执行结果:
test_baidu_map (test_case1.Baidu_Link)
点击百度首页的地图,看是否可以正常跳转 ... ok
test_baidu_news (test_case1.Baidu_Link)
'点击百度首页的新闻,看是否可以正常跳转 ... ok
test_baidu_enbale (test_case2.Baidu_search)
测试百度首页的输入框可编辑 ... ok
test_baidu_search (test_case2.Baidu_search)
测试百度首页的输入框可以搜索 ... ok ----------------------------------------------------------------------
Ran 4 tests in 40.277s
OK
unittest批量执行测试用例的更多相关文章
- 3.3 unittest批量执行
3.3 unittest批量执行 我们在写用例的时候,单个脚本的用例好执行,那么多个脚本的时候,如何批量执行呢?这时候就需要用到unittet里面的discover方法来加载用例了.加载用例后,用un ...
- selenium之批量执行测试用例
把写好的测试用例放在指定目录下,使用discover函数扫描该目录,并根据关键字自动筛选需要执行的用例.本例使用Python3.6版本. # 遍历指定目录,批量执行测试用例 import unitte ...
- web自动化测试实战之批量执行测试用例
01实战之分离测试固件 在UI 自动化测试中,不管编写哪个模块的测试用例,都需要首先在测试类中编写测试固件初始化WebDriver类及打开浏览器,执行登录,才能进行下一步业务逻辑的操作,测试用例执行完 ...
- 使用python进行接口自动化测试,批量执行测试用例
工作中,使用python的requests库进行接口自动化测试是一个比较不错的选择,今天就以某网站的免费接口为例,展示以get请求进行批量执行测试用例.话不多说直接开讲 分析一下接口信息, 请求地址: ...
- python自动化-unittest批量执行用例(discover)
前言 我们在写用例的时候,单个脚本的用例好执行,那么多个脚本的时候,如何批量执行呢?这时候就需要用到unittet里面的discover方法来加载用例了. 加载用例后,用unittest里面的Text ...
- Appium+Python之批量执行测试用例
思考:当存在多个脚本,每个脚本中有多条测试用例时,我们该如何批量执行呢?分析:首先创建2个测试用例脚本(.py文件),每个脚本有2条测试用例,然后批量执行全部测试用例 #Test_01.py # co ...
- JAVA 批量执行测试用例
如果多个测试用例在不同的类中,又需要一次性执行完所有的测试用例,则可以使用到Junit中的批量执行测试方法. 方法一 这种方式非常简单,不需要额外多写一行代码,Eclipse 本来就支持以项目或包为单 ...
- postman使用--批量执行测试用例和数据驱动
批量执行 在我们测试接口的时候,有时候希望执行所有的测试用例,前面讲的都是测试单个的接口,postman提供了我们批量执行接口的功能 点击Runner 然后我们点击run 执行完会统计出我们的结果,失 ...
- No.18 selenium学习之路之批量执行测试用例
diascover方法,加载所有测试用例 1.discover方法里面有三个参数: -case_dir:测试用例的目录 -pattern:这个是匹配脚本名称的规则,test*.py意思是匹配test开 ...
随机推荐
- Gitlab_ansible_jenkins三剑客④jenkins安装图解及freestyle的简单使用
java环境准备 # 安装jdk1.8 [root@node02 ~]# rpm -ivh jdk-8u181-linux-x64.rpm vim /etc/profile export JAVA_H ...
- 在Vue中使用样式
##使用class样式 一共四种方式在注释中有解释 <!DOCTYPE html> <html> <head> <meta charset="utf ...
- MySQL ERROR 1820 (HY000)
You must reset your password using ALTER USER statement before executing this statement报错处理 解决方式如下: ...
- PHP消息队列实现及应用
目前对消息队列并不了解其原理,本篇文章主要是通过慕课网学习归纳的一些笔记,为后续学习打下基础. 众所周知在对网站设计的时候,会遇到给用户“群发短信”,“订单系统有大量的日志”,“秒杀设计”等,服务器没 ...
- .net core ef 通过dbfirst方式连接sql server数据库
1. 创建基于.net core 的项目(过程略) 2. 使用nuget添加引用 Microsoft.EntityFrameworkCore Microsoft.EntityFrameworkCore ...
- thinkPHP实现APP微信支付
控制器 class Pay extends Controller { const WX_PAY_URL = "https://api.mch.weixin.qq.com/pay/unifie ...
- Angular 自定义拖拽指令
指令 组件是一种带模版的指令.指令是超级. 结构型指令(改变布局)和属性型指令(改变外观和行为). Renderer2和ElementRef Angular不提倡直接操作DOM 对于DOM的操作应该通 ...
- 使用docker 部署rabbitmq 镜像
1.使用带有web管理功能 sudo docker pull rabbitmq:management 2.运行镜像文件创建容器 sudo docker run -d --name rabbitmq - ...
- 作用域链和函数内部this指向问题以及bind、call、apply方法
作用域链和函数内部this指向问题以及bind.call.apply方法 作用域链 作用域是相对于变量而言的, 其意义就在与查找变量(确定变量的来处, 变量是否可以访问到, 确定变量在当前位置是否可以 ...
- pwn学习之四
本来以为应该能出一两道ctf的pwn了,结果又被sctf打击了一波. bufoverflow_a 做这题时libc和堆地址都泄露完成了,卡在了unsorted bin attack上,由于delete ...