selenium--unittest框架

 一、前置/后置条件

setUp():用于测试用例执行前的初始化工作。如测试用例中需要访问数据库,可以在setUp中建立数据库连接并进行初始化。如测试用例需要登录web,可以先实例化浏览器。

tearDown():用于测试用例执行之后的善后工作。如关闭数据库连接。关闭浏览器。

setUpClass():用于测试用例执行前的初始化工作,和setUp()区别如下。

tearDownClass():用于测试用例执行之后的善后工作,和tearDown()区别如下。

# coding:utf-8
import unittest
import time

class Test1(unittest.TestCase):
    '''测试类,是多个测试用例的集合,可以把一些相同的操作写成一个类'''
    def setUp(self):                            # 每条用例开始时都得执行一次(执行多次)
        print("-----开始测试!!!----")

    def tearDown(self):                         # 每条用例结束后都得执行一次(执行多次)
        print("-----测试结束!!!----")

    @ classmethod                               # 必须要加@classmethod装饰器
    def setUpClass(cls):                        # 只有最开始的时候才会执行(执行一次)
        print("-----打开浏览器----")

    @ classmethod
    def tearDownClass(cls):                     # 只有结束后才会执行(执行一次)
        print("-----关掉浏览器------")

if __name__ == '__main__':
    unittest.main()

 二、装饰器

unittest.skip(): 装饰器,当运行用例时,有些用例可能不想执行等,可用装饰器暂时屏蔽该条测试用例。一种常见的用法就是比如说想调试某一个测试用例,想先屏蔽其他用例就可以用装饰器屏蔽。

@unittest.skip("由于XX原因,暂时跳过该用例")                # : skip(reason)装饰器:无条件跳过装饰的测试,并说明跳过测试的原因。

@unittest.skipIf(reason)                                # skipIf(condition, reason)装饰器:条件为真时,跳过装饰的测试,并说明跳过测试的原因。

@unittest.skipUnless(reason)                            # skipUnless(condition, reason)装饰器:条件为假时,跳过装饰的测试,并说明跳过测试的原因。

@unittest.expectedFailure()                             # expectedFailure()测试标记为失败。
原文地址:https://www.cnblogs.com/yitao326/p/10985516.html