黑马程序员技术交流社区
标题: 【郑州校区】Fixture [打印本页]
作者: 我是楠楠 时间: 2019-9-19 11:44
标题: 【郑州校区】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 示例代码
[AppleScript] 纯文本查看 复制代码
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)
[AppleScript] 纯文本查看 复制代码
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?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |