python Unittest中setUp与setUpClass的区别

本文介绍了Python Unittest框架中setUp与setUpClass的区别:setUp在每个测试case前运行,tearDown在每个case后执行,setUpClass在所有case前只运行一次,tearDownClass在所有case后只运行一次。同时,文章提到了如何控制测试用例执行顺序,并提供了待测模块myfunc.py的测试案例。针对可能出现的导入问题,建议调整文件路径和设置为`sources root`。为了生成HTML格式的测试报告,可以使用HTMLTestRunner,下载后放置于Python的lib目录下,并在测试脚本中添加相关代码。若直接在测试脚本中添加报告输出不可行,可以创建独立的run.py模块来实现。
摘要由CSDN通过智能技术生成

1.setUp():每个测试case运行之前运行
2.tearDown():每个测试case运行完之后执行
3.setUpClass():必须使用@classmethod 装饰器, 所有case运行之前只运行一次
4.tearDownClass():必须使用@classmethod装饰器, 所有case运行完之后只运行一次

控制用例执行顺序


#coding:utf8
from selenium import webdriver  # webdriver属于selenium的API
import unittest  # unittest是python自带的模块
import time
class test_mail_login(unittest.TestCase):  # 定义一个类并集成 unittest 基类中的 TestCase 类
    @classmethod
    def setUpClass(cls):   # 每个测试case运行之前运行(前置条件)
        cls.driver = webdriver.Chrome()  # 驱动谷歌浏览器
        cls.driver.get("https://www.baidu.com")  # 获取百度URL
        cls.driver.set_window_size(800, 1000)  # 窗口大小设置
        # self.driver.maximize_window()  # 窗口最大化
        time.sleep(2)
        cls.driver.find_element_by_id("kw").send_keys("网易")  # 百度输入框定位并键入关键字
        time.sleep(3)
        cls.driver.find_element_by_id("su").click()  # 点击搜索按钮
        cls.driver.implicitly_wait(5)  # 页面静置5秒,无任何动作
    def test_mail_loginsuc(self):  # 设计测试用例(case)重点注意,方法名必须以【test_】开头
        self.driver.find_element_by_id("op_email3_username").send_keys("testerhunter")
        time.sleep(2)
        self.driver.find_element_by_class_name("op_email3_password").send_keys("123456hunter")
        time.sleep(2)
        self
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值