用例编写
在进行接口测试时,对同一个接口进行测试时,会有多个不同参数进行测试,这些参数的位置、结构相同,可以使用参数化的方法代替写多条用例
1 import unittest 2 import requests 3 from parameterized import parameterized 4 class Apitest(unittest.TestCase): 5 6 @classmethod 7 def setUpClass(cls): 8 print("开始") 9 @classmethod 10 11 def tearDownClass(cls): 12 print("结束") 13 14 @parameterized.expand([ 15 ("username","","","用户名或密码不存在"), 16 ("lose_one","admin","","用户名或密码不存在"), 17 ("error_username","admin1","12345678","用户名错误!"), 18 ("error_password","admin","1234567","11111111111111111"), 19 20 ]) 21 22 def test_api(self,name_cs,name,password,msg): 23 url = "http://localhost/api/user/login" 24 header = {'Content-Type': 'application/json'} 25 json = { 26 "username" : name, 27 "password" : password 28 } 29 timeout = 4 30 31 r = requests.post(url, headers=header, json=json, timeout=timeout) 32 33 self.assertIn(msg,r.text)
下载parameterized
pip install parameterized
这个脚本为登录接口测试用例
使用parameterized.expand添加参数
每一条用例执行4个参数,分别为用例名称、name、password、以及预期结果,实际使用时可按接口要求自行修改