1. 程式人生 > >python編輯基礎與http接口測試_9.3章節

python編輯基礎與http接口測試_9.3章節

stat 成功 dig 基礎 客戶 指定 isdigit sin 單元

HTTP狀態碼分類查詢方法+單元測試

 1 #StatusCodeType.py
 2 class StatusCodeType():
 3     def getStatusType(self,Status):
 4         if isinstance(Status,str):
 5             if Status.isdigit():
 6                 if Status[0]==1:
 7                     return 收到請求請求信息
 8                 elif Status[0]==2:
 9
return 成功 10 elif Status[0]==3: 11 return 重定向 12 elif Status[0]==4: 13 return 客戶端錯誤 14 elif Status[0]==5: 15 return 服務端錯誤 16 else: 17 return
不存在的狀態碼 18 else: 19 return 不存在的狀態碼 20 elif isinstance(Status,int): 21 if Status>=100 and Status<200: 22 return 收到請求請求信息 23 elif Status >=200 and Status <300: 24 return 成功 25 elif Status >= 300 and
Status < 400: 26 return 重定向 27 elif Status >= 400 and Status < 500: 28 return 客戶端錯誤 29 elif Status >= 500 and Status < 600: 30 return 服務端錯誤 31 else: 32 return 不存在的狀態碼 33 else: 34 return 不存在的狀態碼
 1 import StatusCodeType
 2 s=StatusCodeType.StatusCodeType()
 3 class test_StatusCode(unittest.TestCase):
 4     def setUp(self):
 5         pass
 6     def tearDown(self):
 7         pass
 8     def test_01(self):
 9         x=s.getStatusType(100)
10         self.assertEqual(x,收到請求請求信息)
11     def test_02(self):
12         x=s.getStatusType(199)
13         self.assertEqual(x,收到請求請求信息)
14     def test_03(self):
15         x=s.getStatusType(200)
16         self.assertEqual(x,成功)
17     #@unittest.skip(‘不執行該用例‘)
18     def test_04(self):
19         x=s.getStatusType(299)
20         self.assertEqual(x,成功)
21     #@unittest.skipIf(1,‘跳過它‘)
22     def test_05(self):
23         x=s.getStatusType(300)
24         self.assertEqual(x,重定向)
25     #@unittest.skipIf(0, ‘執行它‘)
26     def test_06(self):
27         x=s.getStatusType(399)
28         self.assertEqual(x,重定向)
29     def test_07(self):
30         x=s.getStatusType(400)
31         self.assertEqual(x,客戶端錯誤)
32     def test_08(self):
33         x=s.getStatusType(499)
34         self.assertEqual(x,客戶端錯誤)
35     def test_09(self):
36         x=s.getStatusType(500)
37         self.assertEqual(x,服務端錯誤)
38     def test_10(self):
39         x=s.getStatusType(599)
40         self.assertEqual(x,服務端錯誤)
41     def test_11(self):
42         x=s.getStatusType(100.5)
43         self.assertEqual(x,不存在的狀態碼)
44     def test_12(self):
45         x=s.getStatusType(-5)
46         self.assertEqual(x,不存在的狀態碼)
47     def test_13(self):
48         x=s.getStatusType(abc)
49         self.assertEqual(x,不存在的狀態碼)
50     def test_14(self):
51         x=s.getStatusType(99)
52         self.assertEqual(x,不存在的狀態碼)
53     def test_15(self):
54         x=s.getStatusType(600)
55         self.assertEqual(x,不存在的狀態碼)
56     def test_16(self):
57         x=s.getStatusType(302)
58         self.assertEqual(x,重定向)
59     def test_17(self):
60         x=s.getStatusType(302.5)
61         self.assertEqual(x,不存在的狀態碼)
62 if __name__==__main__:
63     unittest.main()

 1 # 附:選擇用例按指定順序執行
 2 import  unittest
 3 from test_9_3_1 import test_StatusCode
 4 if __name__==__main__:
 5     suit=unittest.TestSuite()
 6     case=[test_StatusCode(test_17),test_StatusCode(test_16),test_StatusCode(test_01)]
 7     runner=unittest.TextTestRunner(verbosity=2)#該參數顯示執行的詳細信息
 8     suit.addTests(case)
 9     runner.run(suit)
10     print(執行完成)

python編輯基礎與http接口測試_9.3章節