zoukankan      html  css  js  c++  java
  • unittest使用

    断言

    import requests
    import unittest
    
    data = {
        "username":"wrp",
        "password":"123456"
    }
    class TestCase01(unittest.TestCase):
    
        def setUp(self):
            print("case开始执行")
    
        def tearDown(self):
            print("case结束执行")
    
        @classmethod
        def setUpClass(cls):
            print("case类开始执行")
    
        @classmethod
        def tearDownClass(cls):
            print("case类结束执行")
    
        def test_01(self):
            data1 = {
                "username":"wrp",
                "password":"12345"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_02(self):
            data1 = {
                "username":"wrp",
                "password":"123456"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_03(self):
            flag = True
            self.assertFalse(flag,msg="结果不为false")
        def test_04(self):
            flag = False
            self.assertTrue(flag,msg="结果不为true")
        def test_05(self):
            flag = "111"
            flag1 = "111"
            self.assertEqual(flag,flag1,msg="字符串不相等")
        def test_06(self):
            flag = "asdfsdghghdgfsd"
            s = "h"
            self.assertIn(s,flag,msg="字符未在字符串中")
        
    
    
    
    if __name__ == "__main__":
        unittest.main() 
    

     

    用例执行顺序

    import requests
    import unittest
    
    data = {
        "username":"wrp",
        "password":"123456"
    }
    class TestCase01(unittest.TestCase):
    
        def setUp(self):
            print("case开始执行")
    
        def tearDown(self):
            print("case结束执行")
    
        @classmethod
        def setUpClass(cls):
            print("case类开始执行")
    
        @classmethod
        def tearDownClass(cls):
            print("case类结束执行")
    
        def test_01(self):
            data1 = {
                "username":"wrp",
                "password":"12345"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_02(self):
            data1 = {
                "username":"wrp",
                "password":"123456"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_03(self):
            flag = True
            self.assertFalse(flag,msg="结果不为false")
        def test_04(self):
            flag = False
            self.assertTrue(flag,msg="结果不为true")
        def test_05(self):
            flag = "111"
            flag1 = "111"
            self.assertEqual(flag,flag1,msg="字符串不相等")
        def test_06(self):
            flag = "asdfsdghghdgfsd"
            s = "h"
            self.assertIn(s,flag,msg="字符未在字符串中")
        
    
    
    
    if __name__ == "__main__":
        #unittest.main() 
        suite = unittest.TestSuite()
        #suite.addTest() #批量添加
        
        #单条添加,让用例按自定顺序执行
        # suite.addTest(TestCase01('test_06'))
        # suite.addTest(TestCase01('test_04'))
        # suite.addTest(TestCase01('test_02'))
        # suite.addTest(TestCase01('test_05'))
        # suite.addTest(TestCase01('test_01'))
        # suite.addTest(TestCase01('test_03'))
        # runner = unittest.TextTestRunner()
        # runner.run(suite)
        
    
        #使用list添加用例
        tests = [TestCase01('test_06'),TestCase01('test_02')]
        suite.addTests(tests)
        runner = unittest.TextTestRunner()
        runner.run(suite)
    

      

    有多个case文件时。test_case01.py,test_case02.py,test_case03.py

    import requests
    import unittest
    
    data = {
        "username":"wrp",
        "password":"123456"
    }
    class TestCase01(unittest.TestCase):
    
        def setUp(self):
            print("case开始执行")
    
        def tearDown(self):
            print("case结束执行")
    
        @classmethod
        def setUpClass(cls):
            print("case类开始执行")
    
        @classmethod
        def tearDownClass(cls):
            print("case类结束执行")
    
        def test_01(self):
            data1 = {
                "username":"wrp",
                "password":"12345"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_02(self):
            data1 = {
                "username":"wrp",
                "password":"123456"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_03(self):
            flag = True
            self.assertFalse(flag,msg="结果不为false")
        def test_04(self):
            flag = False
            self.assertTrue(flag,msg="结果不为true")
        def test_05(self):
            flag = "111"
            flag1 = "111"
            self.assertEqual(flag,flag1,msg="字符串不相等")
        def test_06(self):
            flag = "asdfsdghghdgfsd"
            s = "h"
            self.assertIn(s,flag,msg="字符未在字符串中")
    
    
    if __name__ == "__main__":
        #unittest.main() 
        suite = unittest.TestSuite()
        #suite.addTest() #批量添加
        
        #单条添加,让用例按自定顺序执行
        # suite.addTest(TestCase01('test_06'))
        # suite.addTest(TestCase01('test_04'))
        # suite.addTest(TestCase01('test_02'))
        # suite.addTest(TestCase01('test_05'))
        # suite.addTest(TestCase01('test_01'))
        # suite.addTest(TestCase01('test_03'))
        # runner = unittest.TextTestRunner()
        # runner.run(suite)
        
    
        #使用list添加用例
        # tests = [TestCase01('test_06'),TestCase01('test_02')]
        # suite.addTests(tests)
        # runner = unittest.TextTestRunner()
        # runner.run(suite)
    

    test_case02.py

    import requests
    import unittest
    
    data = {
        "username":"wrp",
        "password":"123456"
    }
    class TestCase02(unittest.TestCase):
    
        def setUp(self):
            print("case开始执行")
    
        def tearDown(self):
            print("case结束执行")
    
        @classmethod
        def setUpClass(cls):
            print("case类开始执行")
    
        @classmethod
        def tearDownClass(cls):
            print("case类结束执行")
    
        def test_01(self):
            data1 = {
                "username":"wrp",
                "password":"12345"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_02(self):
            data1 = {
                "username":"wrp",
                "password":"123456"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_03(self):
            flag = True
            self.assertFalse(flag,msg="结果不为false")
        def test_04(self):
            flag = False
            self.assertTrue(flag,msg="结果不为true")
        def test_05(self):
            flag = "111"
            flag1 = "111"
            self.assertEqual(flag,flag1,msg="字符串不相等")
        def test_06(self):
            flag = "asdfsdghghdgfsd"
            s = "h"
            self.assertIn(s,flag,msg="字符未在字符串中")
        
    
    
    
    if __name__ == "__main__":
        #unittest.main() 
        suite = unittest.TestSuite()
        #suite.addTest() #批量添加
        
        #单条添加,让用例按自定顺序执行
        # suite.addTest(TestCase01('test_06'))
        # suite.addTest(TestCase01('test_04'))
        # suite.addTest(TestCase01('test_02'))
        # suite.addTest(TestCase01('test_05'))
        # suite.addTest(TestCase01('test_01'))
        # suite.addTest(TestCase01('test_03'))
        # runner = unittest.TextTestRunner()
        # runner.run(suite)
        
    
        #使用list添加用例
        # tests = [TestCase02('test_06'),TestCase02('test_02')]
        # suite.addTests(tests)
        # runner = unittest.TextTestRunner()
        # runner.run(suite)
    

    test_case03.py

    import requests
    import unittest
    
    data = {
        "username":"wrp",
        "password":"123456"
    }
    class TestCase03(unittest.TestCase):
    
        def setUp(self):
            print("case开始执行")
    
        def tearDown(self):
            print("case结束执行")
    
        @classmethod
        def setUpClass(cls):
            print("case类开始执行")
    
        @classmethod
        def tearDownClass(cls):
            print("case类结束执行")
    
        def test_01(self):
            data1 = {
                "username":"wrp",
                "password":"12345"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_02(self):
            data1 = {
                "username":"wrp",
                "password":"123456"
            }
            self.assertDictEqual(data,data1,msg="dict结果不相等")
        def test_03(self):
            flag = True
            self.assertFalse(flag,msg="结果不为false")
        def test_04(self):
            flag = False
            self.assertTrue(flag,msg="结果不为true")
        def test_05(self):
            flag = "111"
            flag1 = "111"
            self.assertEqual(flag,flag1,msg="字符串不相等")
        def test_06(self):
            flag = "asdfsdghghdgfsd"
            s = "h"
            self.assertIn(s,flag,msg="字符未在字符串中")
        
    
    
    
    if __name__ == "__main__":
        #unittest.main() 
        suite = unittest.TestSuite()
        #suite.addTest() #批量添加
        
        #单条添加,让用例按自定顺序执行
        # suite.addTest(TestCase01('test_06'))
        # suite.addTest(TestCase01('test_04'))
        # suite.addTest(TestCase01('test_02'))
        # suite.addTest(TestCase01('test_05'))
        # suite.addTest(TestCase01('test_01'))
        # suite.addTest(TestCase01('test_03'))
        # runner = unittest.TextTestRunner()
        # runner.run(suite)
        
    
        #使用list添加用例
        # tests = [TestCase03('test_06'),TestCase03('test_02')]
        # suite.addTests(tests)
        # runner = unittest.TextTestRunner()
        # runner.run(suite)
    

      

    使用runcase.py中unittest管理用例

    #coding=utf-8
    import sys
    sys.path.append('D:Test')
    import unittest
    from unittest_case.test_case01 import TestCase01
    from unittest_case.test_case02 import TestCase02
    from unittest_case.test_case03 import TestCase03
    
    case_01 = unittest.TestLoader().loadTestsFromTestCase(TestCase01)
    case_02 = unittest.TestLoader().loadTestsFromTestCase(TestCase02)
    case_03 = unittest.TestLoader().loadTestsFromTestCase(TestCase03)
    
    suite = unittest.TestSuite([case_01,case_02,case_03])
    unittest.TextTestRunner().run(suite)
     
    

    使用@unittest.skip()跳过case不执行

        @unittest.skip()
        def test_05(self):
            flag = "111"
            flag1 = "111"
            self.assertEqual(flag,flag1,msg="字符串不相等")
    

    @unittest.skipIf()

    host = "http://www.baiu.com"
    class TestCase01(unittest.TestCase):
    
        def setUp(self):
            print("case开始执行")
    
        def tearDown(self):
            print("case结束执行")
    
        @classmethod
        def setUpClass(cls):
            print("case类开始执行")
    
        @classmethod
        def tearDownClass(cls):
            print("case类结束执行")
    
        @unittest.skipIf(host!="http://www.baidu.com","这个case不执行")
        def test_01(self):
            data1 = {
                "username":"wrp",
                "password":"12345"
            }
    

      

  • 相关阅读:
    linux命令-定时任务at
    linux网络监控_网速测试
    Linux磁盘分区扩容
    Ubuntu配置SSH服务
    Ubuntu用户管理
    Ubuntu安装lrzsz
    Ubuntu系统配置apt-get软件更新源
    Ubuntu网络配置IP和DNS等,适用于14.04,16.04,17.10和18.04
    Ubuntu系统安装,适用于14.04,16.04和17.10
    使用nginx反向代理处理前后端跨域访问
  • 原文地址:https://www.cnblogs.com/rongpeng/p/12873530.html
Copyright © 2011-2022 走看看