概要
• unittest.skip() 直接跳过测试
• unittest.skipIf() 条件为真,跳过测试
• unittest.skipUnless 条件为假,跳过测试
• unittest.expectedFailure 预期设置失败
skip规则设定案例
import unittest
class Test1(unittest.TestCase):
#class 执行的时候执行一次,不跟方法走
@classmethod
def setUpclass(cls):
print('class module start>>>>>')
@classmethod
def tearDownclass(cls):
print('class module end>>>>>')
def setUp(self):
print("Test1 start")
@unittest.skipIf(4 > 3, "skip Test_d")
def test_c(self):
print("test_c")
# @unittest.skipUnless(1<0, "skip test_b")
def test_b(self):
print("test_b")
def tearDown(self):
print("Test1 end")
@unittest.skip(" skip Test_2")
class Test2(unittest.TestCase):
def setUp(self):
print("Test2 start")
def test_d(self):
print("test_d")
# @unittest.expectedFailure
def test_a(self):
print("test_a")
def tearDown(self):
print("Test2 end!")
if __name__ == '__main__':
unittest.main()
编写Web测试用例
案例:百度搜索关键词:“Selenium自学网” 并打开课程页面。
from selenium import webdriver
import unittest
from time import sleep
class TestBaidu(unittest.TestCase):
def setUp(self):
self.driver=webdriver.Firefox()
self.driver.implicitly_wait(10)
self.driver.get("http://www.baidu.com/")
def test_baidu(self):
driver=self.driver
driver.find_element_by_id("kw").clear()
driver.find_element_by_id("kw").send_keys("Selenium自学网")
driver.find_element_by_id("su").click()
sleep(3)
title=driver.title
self.assertEqual(title,"Selenium自学网_百度搜索")
driver.find_element_by_partial_link_text("Selenium自动化").click()
sleep(5)
def tearDown(self):
self.driver.quit()
if __name__ == '__main__':
unittest.main()
执行测试用例
import unittest
test_dir='./test_case'
discover=unittest.defaultTestLoader.discover(test_dir,pattern="test*.py")
if __name__ == '__main__':
runer=unittest.TextTestRunner()
runer.run(discover)