首页 » 技术分享 » Fixture

Fixture

 

目标

1. 掌握方法级别和类级别的Fixture

2. 了解模块级别的Fixture

1. Fixture

小需求:在一个测试类中定义多个测试方法,查看每个测试方法执行完所花费的时长。

说明:Fixture是一个概述,对一个测试用例环境的初始化和销毁就是一个Fixture

 

Fixture控制级别:

1. 方法级别

2. 类级别

模块级别

1.1 方法级别

1.2 类级别

1.3模块级别 [了解]

2. 案例

需求:使用UnitTest框架对tpshop项目测试

1). 点击登录,进入登录页面

2). 输入用户名和密码,不输入验证码,直接点击登录按钮

3). 获取错误提示信息

2.1 示例代码

import  time import  unittest
from  selenium  import  webdriver class  TestLogin(unittest.TestCase):
def  setUp(self):
self.driver  =  webdriver.Firefox() self.driver.get("http://localhost") self.driver.implicitly_wait(10) self.driver.maximize_window()
 
def  test_login(self):
# 点击登录按钮
self.driver.find_element_by_link_text("登录").click()
# 输入用户名
self.driver.find_element_by_id("username").send_keys("13012345678")
# 输入密码
self.driver.find_element_by_id("password").send_keys("123456")
# 点击登录按钮
self.driver.find_element_by_css_selector("[name='sbtbutton']").click()
# 获取错误提示信息
msg  =  self.driver.find_element_by_css_selector(".layui-layer-content").text print("msg=",  msg)

 

def  tearDown(self): time.sleep(3) self.driver.quit()

 

2.2 总结

1. 必须继承unittest.TestCase类,setUp、tearDown才是一个Fixture

2. setUp:一般做初始化工作,比如:实例化浏览器驱动对象、浏览器最大化、设置隐式等待等

3. tearDown:一般做结束工作,比如:关闭浏览器驱动对象、退出登录等

3. 总结

1. 什么是Fixture?

2. Fixture控制级别有哪些?

如何定义Fixture?

转载自原文链接, 如需删除请联系管理员。

原文链接:Fixture,转载请注明来源!

0