1.unittest_简单使用规则

一. unittest测试用例编写规则

  1. 需要导入unittest包;
  2. 测试类必须继承unittest.TestCase类;
  3. 测试方法必须要以test开头‘;

二、简单用法

我们先看一个简单的demo

import unittest

def add(a,b):
    return a+b

expected = 8

class TestAdd(unittest.TestCase):
    def test_add_success(self):
        self.assertTrue(expected == add(3,5))
    def test_add_error(self):
        self.assertEqual(7,add(2,5))

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

  1. 第一行是导入unittest这个模块

  2. class这一行是定义一个测试的类,并继承unittest.TestCase这个类

  3. 接下来是定义了两个测试case名称:test_add_successtest_add_error

  4. 注意测试用例要以test_开头

  5. 然后是断言assert,这里的断言方法是assertEqual-判断两个是否相等,这个断言可以是一个也可以是多个
    assertTrue断言是否为真;

  6. if下面的这个unittest.main()是运行主函数,运行后会看到测试结果(跑了两个用例耗时0.000秒,两个用例都通过):

test_unittest01.py::TestAdd::test_add_error PASSED                       [ 50%]
test_unittest01.py::TestAdd::test_add_success PASSED                     [100%]

============================== 2 passed in 0.02s ==============================

三. 前置和后置

1. setUp:

在写测试用例的时候,每次操作其实都是基于打开浏览器输入对应网址这些操作,这个就是执行用例的前置条件。

2. tearDown:

执行完用例后,为了不影响下一次用例的执行,一般有个数据还原的过程,这就是执行用例的后置条件。

使用场景:

很多人执行完用例,都不去做数据还原,以致于下一个用例执行失败;这样便于做数据还原;
比如ui自动化便于去搞开启和关闭浏览器的操作;

案例:

可以观察到每个测试用例执行前都是去执行开启浏览器的操作,用例执行后都是去关闭浏览器;
可见setup和teardown是每次用例开启和关闭都会自动去执行;

参考代码:

from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
import time
import unittest

class Blog(unittest.TestCase):
    #在前置条件中进行登录操作
    def setUp(self):
        self.driver = webdriver.Chrome()
        self.driver.get("https://blog.csdn.net/qq_34400745")

    def test_title01(self):
        time.sleep(2)
        assert "静静" in self.driver.title

    def test_title02(self):
        time.sleep(2)
        assert "静静" == self.driver.title
#后置条件进行关闭
    def tearDown(self):
        self.driver.quit()

if __name__ == "__main__":
    unittest.main()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值