使用unittest框架接口测试

#os读取文件路径

#token传递

#htmltestrunner报告

#unittest测试套

import unittest
import requests
import csv
import os
from HTMLTestRunner import HTMLTestRunner

#htmltestrunner.py文件下载:http://tungwaiyip.info/software/HTMLTestRunner.html
class test_updatauser_v3(unittest.TestCase):
    def setUp(self):
        #csv读取
        path=os.getcwd()
        seppath=os.path.abspath(os.path.dirname(path)+os.path.sep+'..')
        #文件路径注意转义
        self.datapath=seppath+r'\testdatafile\ind_data\updateuser_data.csv'
        file1=open(self.datapath,'r')
        table=csv.reader(file1)
        userinfo={}
        for row in table:
            url=row[0]
            userinfo[row[3]]=row[4]
            userinfo[row[5]] = row[6]
            #
            break
        response=requests.post(url,data=userinfo)
        self.session=dict(response.cookies)['JSESSIONID']
        print(self.session)
    def test_cae1_updatauser(self):
        file2=open(self.datapath,'r')
        table=csv.reader(file2)
        #这里设置userinfo后,每次循环都会在原先数据后累加上循环的值,错误
        # userinfo = {}
        num=0
        for row in table:
            num=num+1
            if num>1:
                url=row[0]
                exprsult=row[1]
                j=int(row[2])
                #注意这里userinfo变量设置位置,使每次循环后userinfo置空
                userinfo={}
                for i in range(3,j*2+3,2):
                    userinfo[row[i]]=row[i+1]
                print(userinfo)
                session={'JSESSIONID':self.session}
                response=requests.post(url,data=userinfo,cookies=session).text
                self.assertIn(exprsult,response)

if __name__ == '__main__':
    suite=unittest.TestSuite()
    suite.addTest(test_updatauser_v3('test_cae1_updatauser'))
    path = os.getcwd()
    seppath = os.path.abspath(os.path.dirname(path) + os.path.sep + '..')
    reportpath=seppath+r'\testresultfile\ind_result\updateuser_report.html'
    file=open(reportpath,'wb')
    runner=HTMLTestRunner(stream=file,title='更新用户接口测试',description='接口测试报告')
    runner.run(suite)
    file.close()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值