python编辑基础与http接口测试_9.3章节

本文介绍了一个用于分类HTTP状态码的Python类,并通过多个单元测试案例验证其正确性。该类支持字符串和整数类型的状态码输入,并能够准确地判断状态码所属的类别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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('执行完成')

 

转载于:https://www.cnblogs.com/jiawenliao/p/8989306.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值