起因:

最近有点空闲,又通过robotframework做接口测试,首先第一个登录就又把人难住了

发了请求后,没有得到预期的结果,从结果看返回了登录的界面

分析:

登录接口本身是一个重定向的接口,而且需要先调用一个get请求,创建好一个session后,再调一个post请求,通过重定向后完成登录

 

 上图为通过python+requests调用接口,通过fiddler捕获到的结果,下图为部分代码

import requests
import json
url = "xxx/login?service=xxx"
params = {"username": "xxx",
           "password": "xxxxx"}
session = requests.session()
session.get(url)
response = session.post(url, params=params)

而通过robotframework调用的接口,通过fiddler捕获到的结果显示第二个该重定向的接口,返回结果却是200 :

通过对比发现,使用robotframework调用的接口,传参里面多了一个+

看了robotframework里面写的参数,应该是参数名是复制的,复制的时候可能就复制到了一个换行发,导致出现的该问题

 解决:

调整参数格式后,请求正确响应了

 总结:

一直挺喜欢用robotframework来做接口测试,感觉很清晰很好管理,但是rf里面确实有太多坑了,感觉一不小心就又掉坑里了。另外,做接口测试,真的要配合fiddler来用,排查问题一级棒。

 

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐