下载文件接口测试记录
之前写了上传文件得接口测试记录,现在写一写下载文件得接口测试记录。
通过抓包可以查看到此接口返回的是一个excl文件的内容。
那么测试代码该如何写入参和断言呢?之前想到的方案是将返回的这些内容转换成中文,然后再判断是否是数据库里的数据,结果编码格式一直转换不成功。
于是我查阅了资料,发现其他人都是先写入到另一个excl文件中,然后编码格式问题也自动解决了。
························#省略部分代码 headers = {'Content-Type':'application/json;charset=UTF-8'} payload = json.dumps(payload) response = Test_Export.http.post( '/device/export', data=payload,headers=headers) res = response.content with open('device.xls','wb')as f: #返回的xls内容写入新的文件中 f.write(res) txt = pd.read_excel(r'device.xls') #读取文件内容用作断言 print(txt) self.assertEqual(200, response.status_code, '返回非200') self.assertIn(str('终端编号'), str(txt), '导出列表信息失败')
然后生成写入的文件,通过pandas进行读取,然后断言。
运行结果如下:断言还不是很严谨,后续再改善