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"
            }
    

      

  • 相关阅读:
    POJ 1703 Find them, Catch them
    POJ 2236 Wireless Network
    POJ 2010 Moo University
    POJ 2184 Cow Exhibition
    POJ 3280 Cheapest Palindrome
    POJ 3009 Curling 2.0
    POJ 3669 Meteor Shower
    POJ 2718 Smallest Difference
    POJ 3187 Backward Digit Sums
    POJ 3050 Hopscotch
  • 原文地址:https://www.cnblogs.com/rongpeng/p/12873530.html
Copyright © 2011-2022 走看看