Unittest:
单元测试框架
测试用例必须以test开头
Unittest方法使用:
unittest.TestCase------测试用例,必须继承
unittest.main-----执行
unittest.skip()------注释,并不执行该用例
TestCase.assert*()-----断言方法,判断用例是否执行通过
TestCase.setUp()-------前置,每个测试用例执行一次
TestCase.tearDown()--------后置,每个测试用例执行一次
Unittest案例:
import unittest from selenium import webdriver import time class unitTest(unittest.TestCase): def setUp(self): self.driver=webdriver.Chrome() def testLogin(self): self.driver.get('http://www.sport-covers.com/') time.sleep(4) self.driver.find_element_by_css_selector('body > div.container-top > div > div.sport-user > div.user-btn > a.btnUser.btnUserLogin').click() time.sleep(4) text = self.driver.find_element_by_css_selector('body > div.login-bg > div > div > div.login-logo > span').get_attribute('innerHTML') print('取值%s',text) self.assertIn('用户登录',text,'跳转登录页面失败') def tearDown(self): self.driver.close() if __name__ == '__main__': unittest.main
Unittest的断言方法:
assertEqual(a,b,[msg='测试失败时打印的信息']):断言a和b是否相等,相等则测试用例通过
assertNotEqual(a,b,[msg='测试失败时打印的信息']):断言a和b是否相等,不相等则测试用例通过
assertTrue(x,[msg='测试失败时打印的信息']):断言x是否为真,是真则测试用例通过
assertFalse(x,[msg='测试失败时打印的信息']):断言x是否为假,是假则测试用例通过
assertls(a,b,[msg='测试失败时打印的信息']):断言a是否是b,是则测试用例通过
assertNotls(a,b,[msg='测试失败时打印的信息']):断言a是否是b,不是则测试用例通过
assertlsNone(x,[msg='测试失败时打印的信息']):断言x是否为None,是则测试用例通过
assertlsNotNone(x,[msg='测试失败时打印的信息']):断言x是否不为None,是则测试用例通过
assertln(a,b,[msg='测试失败时打印的信息']):断言a,是否在b中,在b中则测试用例通过
assertNotln(a,b,[msg='测试失败时打印的信息']):断言a是否在b中,不在b中则测试通过
assertlsinstance(a,b,[msg='测试失败时打印的信息']):断言a是是b的一个实例,是则测试通过
assertNotlsinstance(a,b,[msg='测试失败时打印的信息']):断言a是是b的一个实例,不是则测试通过
Unittest执行:
单次执行:
批量执行:
1)测试套件:
unittest.TestSuite()
unittest.defaultTestLoader()
2)执行方法:
unittest.TextTextRunner()
文章链接地址:http://mumuling.com/?p=90