python selenium unittest Fixture(setUp/tearDown)笔记
Fixture用途:
1.做测试前后的初始化设置,如测试数据准备,链接数据库,打开浏览器等这些操作都可以使用fixture来实现
2.测试用例的前置条件可以使用fixture实现
Fixture使用:
import unittest def setUpModule():
print(">>>>>>>>>>测试模块开始<<<<<<<<<<") def tearDownModule():
print(">>>>>>>>>>测试模块开始<<<<<<<<<<") class MyTest(unittest.TestCase):
@classmethod
def setUpClass(cls) -> None:
print('✈✈✈✈测试类开始执行✈✈✈✈!') def setUp(self) -> None:
print('♥❤♥❤测试方法开始执行♥❤♥❤!') def tearDown(self) -> None:
print('♥❤♥❤测试方法执行完毕♥❤♥❤!') @classmethod
def tearDownClass(cls) -> None:
print('✈✈✈✈测试类执行完毕✈✈✈✈!') def test_case1(self):
print("test_case1") def test_case2(self):
print("test_case2") if __name__ == '__main__':
unittest.main()
>>>>>>>>>>测试模块开始<<<<<<<<<<
✈✈✈✈测试类开始执行✈✈✈✈!
♥❤♥❤测试方法开始执行♥❤♥❤!
test_case1
♥❤♥❤测试方法执行完毕♥❤♥❤!
♥❤♥❤测试方法开始执行♥❤♥❤!
test_case2
♥❤♥❤测试方法执行完毕♥❤♥❤!
✈✈✈✈测试类执行完毕✈✈✈✈!
>>>>>>>>>>测试模块开始<<<<<<<<<<在模块的开始于结束时被执行
- setUpModule/tearDownModule:在整个模块的开始于结束时被执行
- setUpClass/tearDownClass:在测试类的开始于结束时被执行
- setUp/tearDown:在测试用例的开始于结束时被执行
值得注意的是setUpClass/tearDownClass为类方法,需要通过@classmethod进行装饰。另外方法的参数为cls,cls与self并没有什么本质区别,都只表示方法的第一个参数
封装:
import unittest
import warnings
from common.base_page import BasePage
from common.browser import Browser
from common.config_utils import local_config
from common.log_utils import logger class SeleniumBaseCase(unittest.TestCase):
@classmethod
def setUpClass(cls) -> None:
logger.info('')
logger.info('✈✈✈✈测试类开始执行✈✈✈✈!')
warnings.simplefilter('ignore', ResourceWarning)
cls.url = local_config.test_url def setUp(self) -> None:
logger.info('♥❤♥❤测试方法开始执行♥❤♥❤!')
self.base_page = BasePage(Browser().get_driver())
self.base_page.set_driver() # 封装了代码的隐式等待与浏览器最大化 def tearDown(self) -> None:
logger.info('♥❤♥❤测试方法执行完毕♥❤♥❤!')
self.base_page.quit_browser() @classmethod
def tearDownClass(cls) -> None:
logger.info('✈✈✈✈测试类执行完毕✈✈✈✈!')
python selenium unittest Fixture(setUp/tearDown)笔记的更多相关文章
- Python+Selenium+Unittest+Ddt+HTMLReport分布式数据驱动自动化测试框架结构
1.Business:公共业务模块,如登录模块,可以把登录模块进行封装供调用 ------login_business.py from Page_Object.Common_Page.login_pa ...
- Python+selenium+unittest+HTMLTestReportCN单元测试框架分享
分享一个比较基础的,系统性的知识点.Python+selenium+unittest+HTMLTestReportCN单元测试框架分享 Unittest简介 unittest是Python语言的单元测 ...
- python单元测试unittest、setUp、tearDown()
单元测试反应的是一种以测试为驱动的开发模式,最大的好处就是保证一个程序模块的行为符合我们设计的测试用例,在将来修改的时候,可以极大程度保证该模块行为仍然是正确的. 下面我编写一个Dict来,这个类的行 ...
- python+selenium +unittest生成HTML测试报告
python+selenium+HTMLTestRunner+unittest生成HTML测试报告 首先要准备HTMLTestRunner文件,官网的HTMLTestRunner是python2语法写 ...
- python+selenium+unittest,爬虫电影网站
以前经常在这个网站上下载电影下来看,这个网站比较坑的就是,主页上只有电影的名称,但是评分是看不到的:只有再点击电影名字,进入电影主页时才能看到评分.一般下载的电影都是评分高的才看,低的就忽略掉了.每次 ...
- Python + selenium + unittest装饰器 @classmethod
前言 前面讲到unittest里面setUp可以在每次执行用例前执行,这样有效的减少了代码量,但是有个弊端,比如打开浏览器操作,每次执行用例时候都会重新打开,这样就会浪费很多时间. 于是就想是不是可以 ...
- selenium中的setUp,tearDown与setUpClass,tearDownClass的区别
def setUpClass(cls): cls.driver = webdriver.Chrome() cls.driver.maximize_window() def setUp(self): s ...
- Python+Selenium ----unittest单元测试框架
unittest是一个单元测试框架,是Python编程的单元测试框架.有时候,也做叫做“PyUnit”,是Junit的Python语言版本.这里了解下,Junit是Java语言的单元测试框架,Java ...
- python selenium --unittest 框架
转自:http://www.cnblogs.com/fnng/p/3300788.html 学习unittest 很好的一个切入点就是从selenium IDE 录制导出脚本.相信不少新手学习sele ...
随机推荐
- 手机app测试用例怎么写?手机app测试点有哪些?只有干货没有水分,错过绝对后悔!
一.前言 在当今竞争激烈的市场上一个APP的成功离不开一个可靠的测试工程师.因此,对功能和用户体验有特殊关注的App进行全面测试是必不可少的.如何做到测试用例的百分百覆盖一直是测试用例编写过程中 ...
- mysql5.7免安装版配置
解压之后,新建一个my.ini 内容是: [mysql] # 设置mysql客户端默认字符集 default-character-set = utf8 [mysqld] #安装目录 basedir = ...
- 网络找的 关于 “中吹” Janus Dongye
看了这篇文章,感觉错过了一个精彩的人生. Janus Dongye, Coding Peasant at Universityof Cambridge (2012-present)(剑桥码农,2012 ...
- Vue3.0新版API之composition-api入坑指南
关于VUE3.0 由于vue3.0语法跟vue2.x的语法几乎是完全兼容的,本文主要介绍了如何使用composition-api,主要分以下几个方面来讲 使用vite体验vue3.0 composit ...
- Spring MVC 中的http Caching
文章目录 过期时间 Last-Modified ETag Spring ETag filter Spring MVC 中的http Caching Cache 是HTTP协议中的一个非常重要的功能,使 ...
- Django入门4: ORM 数据库操作
大纲 一.DjangoORM 创建基本类型及生成数据库表结构 1.简介 2.创建数据库 表结构 二.Django ORM基本增删改查 1.表数据增删改查 2.表结构修改 三.Django ORM 字段 ...
- python实现二分叉查找
*二分叉查找就是折半查找 比如12345这几个数字当中找2,他会先找到这五个数字中的中坚的那个与2进行比较,比如中间的3>2他就认为3以后的不用查找了,然后查找3左边的,即123,再把这个分半, ...
- Mac查看与修改系统默认shell
Mac查看与修改系统默认shell 查看所有shell cat /etc/shells 输出: # List of acceptable shells for chpass(1). # Ftpd wi ...
- 2019 Multi-University Training Contest 10 I Block Breaker
Problem Description Given a rectangle frame of size n×m. Initially, the frame is strewn with n×m squ ...
- POJ3614防晒霜 这个贪心有点东西(贪心+优先队列)
这个题是说有C头牛去晒太阳,带了L瓶防晒霜,每瓶防晒霜都有一个SPF值(每瓶防晒霜都能解决一个最短路 ) 每头牛给出了他可以接受防晒霜的上限,和下限,每种防晒霜都给出了SPF值与数量. 从防晒霜的sp ...