zoukankan      html  css  js  c++  java
  • python+selenium+unittest测试框架1-unittest单元测试框架和断言

     unittest单元测试框架和断言

    一、unittest单元测试框架简介

    1、导入unittest模块

    import unittest

    2、定义测试类

    class Login(unittest.TestCase):

    3、前置条件

        def setUp(self):
            u'''没有前置条件可以写pass'''
            pass

    4、测试case加断言

        def test01(self): #测试用例必须以test开头
            print("执行测试用例01")
            result = '1'
            self.assertTrue(result) #断言result是不是True

    5、后置条件

        def tearDown(self):
            u'''没有后置条件可以写pass'''
            pass

    6、运行主函数

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

    示例:

    复制代码
    #导入unittest模块
    import unittest
    
    class Login(unittest.TestCase):
        def setUp(self):
            u'''没有前置条件可以写pass'''
            pass
        def test01(self): #测试用例必须以test开头
            print("执行测试用例01")
            result = '1'
            self.assertTrue(result) #断言result是不是True
        def tearDown(self):
            u'''没有后置条件可以写pass'''
            pass
    if __name__ == '__main__':
        unittest.main()
    复制代码

    二、断言

    unittest常用的断言方法

    1、assertEqual(self, first, second,msg=None)

        def test02(self):#判断两个参数是否相等
            print("执行测试用例02")
            result1 = '1'
            result2 = '2'
            self.assertEqual(result1,result2,msg="%s不等于%s"%(result1,result2))

    2、assertNotEqual(self, first, second,msg=None)

        def test03(self):#判断两个参数是否不相等
            print("执行测试用例03")
            result1 = '1'
            result2 = '2'
            self.assertNotEqual(result1,result2,msg="%s等于%s"%(result1,result2))

    3、assertIn(self, member, container,msg=None)

        def test04(self):#判断一个参数是否包含另一个参数
            print("执行测试用例04")
            result1 = '1'
            result2 = '21'
            self.assertIn(result1,result2,msg="%s不包含%s"%(result2,result1))

    4、assertNotIn(self, member,container, msg=None)

        def test05(self):#判断一个参数是否不包含另一个参数
            print("执行测试用例05")
            result1 = '1'
            result2 = '2'
            self.assertNotIn(result1,result2,msg="%s包含%s"%(result2,result1))

    5、assertTrue(self, expr, msg=None)

        def test06(self): #测试一个参数是否为真
            print("执行测试用例06")
            result = ''
            self.assertTrue(result,msg="%s不是True"%result) 

    6、assertFalse(self, expr, msg=None)

        def test07(self):#判断一个参数是否不包含另一个参数
            print("执行测试用例07")
            result = ''
            self.assertFalse(result,msg="%s不是False"%(result))

    7、assertIsNone(self, obj, msg=None)

        def test08(self):#判断一个参数是否不包含另一个参数
            print("执行测试用例08")
            result = None
            self.assertIsNone(result,msg="%s不是None"%(result))

    8、assertIsNotNone(self, obj,msg=None)

        def test09(self):#判断一个参数是否不包含另一个参数
            print("执行测试用例09")
            result = '123'
            self.assertIsNotNone(result,msg="%s是None"%(result))

    示例:

    复制代码
    #导入unittest模块
    import unittest
    
    class Login(unittest.TestCase):
        def setUp(self):
            u'''没有前置条件可以写pass'''
            print("开始执行")
            # pass
        def test01(self): #测试用例必须以test开头
            print("执行测试用例01")
            result = '1'
            self.assertTrue(result) #断言result是不是True
        def test02(self):#判断两个参数是否相等
            print("执行测试用例02")
            result1 = '1'
            result2 = '1'
            self.assertEqual(result1,result2,msg="%s不等于%s"%(result1,result2))
        def test03(self):#判断两个参数是否不相等
            print("执行测试用例03")
            result1 = '1'
            result2 = '2'
            self.assertNotEqual(result1,result2,msg="%s等于%s"%(result1,result2))
        def test04(self):#判断一个参数是否包含另一个参数
            print("执行测试用例04")
            result1 = '1'
            result2 = '21'
            self.assertIn(result1,result2,msg="%s不包含%s"%(result2,result1))
        def test05(self):#判断一个参数是否不包含另一个参数
            print("执行测试用例05")
            result1 = '1'
            result2 = '2'
            self.assertNotIn(result1,result2,msg="%s包含%s"%(result2,result1))
        def test06(self): #测试一个参数是否为真
            print("执行测试用例06")
            result = '1'
            self.assertTrue(result,msg="%s不是True"%result)
        def test07(self):#判断一个参数是否不包含另一个参数
            print("执行测试用例07")
            result = ''
            self.assertFalse(result,msg="%s不是False"%(result))
        def test08(self):#判断一个参数是否不包含另一个参数
            print("执行测试用例08")
            result = None
            self.assertIsNone(result,msg="%s不是None"%(result))
        def test09(self):#判断一个参数是否不包含另一个参数
            print("执行测试用例09")
            result = '123'
            self.assertIsNotNone(result,msg="%s是None"%(result))
        def tearDown(self):
            u'''没有后置条件可以写pass'''
            print("结束...")
            # pass
    if __name__ == '__main__':
        unittest.main()
    复制代码

    PS:unittest的执行顺序,先执行setUp,然后执行测试用例test*(测试用例是按照名称顺序执行),最后执行tearDown。

  • 相关阅读:
    oracle,sql server count函数 存储过程 判断 行数 注意事项
    js 跨域访问 获取验证码图片 获取header 自定义属性
    开发作中常用,实用工具推荐!
    phpcms
    php基础
    jQuery , js 写选项卡
    js, jquery实现全选,反选
    jQuery选择器
    学习jQuery
    javascript 与 java继承问题
  • 原文地址:https://www.cnblogs.com/txx403341512/p/9353823.html
Copyright © 2011-2022 走看看