import requests #pip安装requests第三方库,然后引入 import json #引入json标准库,美化json输出 url = 'http://***/account/login' data = { "username":"***01", "password":"password", } result = requests.post(url,data).json() #以json格式输出 print(result) result = requests.post(url,data).text #以源码形式输出 print(result)
import requests#引入requests第三方包 import json#引入json包 class Login(): def httprequests(self,url,data,method):#self为类函数的默认函数,放在第一位 if method=="post": res=requests.post(url,data)#post请求方法 else: res=requests.get(url,data)#get请求方法 print(res.text)#以源码形式输出 print(res.json())#以json形式输出 #创建实例,调用函数 test1=Login() login_url='https://www.******/pc/member/sign' login_data={"flag":"mobile", "password":"f5e05a41724115d076bfb1fd2bd9613e", "mobile_phone":"136********"} login_method='post' test1.httprequests(login_url,login_data,login_method)
(1)先创建一个加法类-Mathmethod,存入Mathmethod.py文件
#定义一个数学加法类 class Mathmethod(): def add(self,a,b): return(a+b) def sub(self,a,b): return(a-b)
(2)然后创建测试用例-TestMathmethod
import unittest from HTMLTestRunner import HTMLTestRunner from requesttest.math.Mathmethod import Mathmethod # 引入Mathmethod模块 #import HTMLTestRunnerNew class TestMathmethod(unittest.TestCase):#创建TestMathmethod类,继承unittest.TestCase方法 #编写测试用例,函数命名必须以test_开头 def test_add_two_num(self): res=Mathmethod().add(null,6) print('两个数值相加结果是',res) self.assertEqual(null,res) def test_sub_two_num(self): res=Mathmethod().sub(null,8) print('两个数值相减结果是', res) self.assertEqual(null,res)
(3)创建测试报告-使用HTML方法
import unittest from HTMLTestRunner import HTMLTestRunner from requesttest.math.TestMathmethod import TestMathmethod testunit=unittest.TestSuite()#生成单元测试流程 testunit.addTest(TestMathmethod("test_add_two_num")) testunit.addTest(TestMathmethod("test_sub_two_num"))#加载一条测试用例 fp=open('D:\\test\\unittest1.html','wb')#创建测试报告,以写的方式存入某个路径 runner=HTMLTestRunner( stream=fp, title="加法测试", description="用例执行情况:" ) runner.run(testunit) fp.close()
(4)也可使用txt的形式输出测试报告
import unittest from HTMLTestRunner import HTMLTestRunner from requesttest.math.TestMathmethod import TestMathmethod suite=unittest.TestSuite()#收集测试用例 loader=unittest.TestLoader()#加载测试用例-按照类的方法添加一个类下面的所有测试用例 suite.addTest(loader.loadTestsFromTestCase(TestMathmethod)) file=open('test_case.txt','w+')#测试报告的存储路径和测试报告的读写方式 runner=unittest.TextTestRunner( stream=file, verbosity=2,#测试报告的详细程度 ) runner.run(suite)#执行测试用例
test_add_two_num (requesttest.math.TestMathmethod.TestMathmethod) ... ok test_sub_two_num (requesttest.math.TestMathmethod.TestMathmethod) ... ok ---------------------------------------------------------------------- Ran 2 tests in 0.000s OK
(5)生成测试报告方法三(HTML的方式)
import unittest from HTMLTestRunner import HTMLTestRunner from requesttest.math.TestMathmethod import TestMathmethod suite=unittest.TestSuite()#收集测试用例 loader=unittest.TestLoader()#加载测试用例 suite.addTest(loader.loadTestsFromTestCase(TestMathmethod)) fp=open('D:\\test\\unittest1.html','wb')#创建测试报告,以写的方式存入某个路径 runner=HTMLTestRunner( stream=fp, title="加法测试", description="用例执行情况:" ) runner.run(suite) fp.close()
以上就是Python实现接口自动化测试的方法详解的详细内容,更多关于Python接口自动化测试的资料请关注插件窝其它相关文章!