前言
在我们测试过程中经常会遇到修改请求协议的问题,例如:http修改为https,可以通过Fiddler修改脚本,在Rules—>Customize Rules,static functionOnBeforeRequest(oSession: Session)方法下面添加代码:
if(oSession.fullUrl.Equals(""xxx.xxx.xxx"))
{
oSession.fullUrl =
"https"+oSession.fullUrl.Substring(oSession.fullUrl.IndexOf(":"));
}
那么大家知道如何将https修改为http吗?小编在工作过程中,遇到了一个这样的问题:为了提高安全性,请求协议为https,但测试环境暂不支持https,在完善测试环境期间,为了把控测试进度,临时采取将https协议改为http,那么该如何修改呢?
方法介绍
小编与其他小伙伴一起探讨,找到一个临时的解决方案:通过Fiddler将https的协议修改为http。
实现步骤:
一、针对一个请求进行修改
方法一:
Fiddler里的AutoResponder选项卡里的EnableRules功能,主要是根据指定的规则来过滤https请求,然后手动改成http。
如下图所示:
方法二:
Fiddler里的Rules—>Customize Rules,
在static functionOnBeforeRequest(oSession: Session)方法下面添加代码,
如下:
if(oSession.uriContains("xxx.xxx.xxx")) //括号内需要填写具体的请求
{
oSession.fullUrl="http://" +oSession.hostname+oSession.PathAndQuery;
}
如下图所示:
二、针对所有请求进行修改
方法一:
Fiddler里的Rules—>CustomizeRules,
在staticfunctionOnBeforeRequest(oSession: Session)方法下面添加代码,
如下:
if(oSession.isHTTPS)
{
oSession.fullUrl="http://"+oSession.hostname+oSession.PathAndQuery;
}
如下图所示:
总结
通过Fiddler修改协议来测试,仅是一个临时的解决方案,为了确保和线上数据的一致性,测试环境要支持https的哦。更多关于Fiddler的内容,请点击如下链接:
1. Fiddler成长之路 - 如何批量修改请求信息
2. Fiddler(七) |QuickExec
3. Fiddler(六)|session快捷图标
4. Fiddler大师之路系列(五)
5. Fiddler大师之路系列(四)
6. Fiddler大师之路系列(三)
7. Fiddler大师之路系列(二)
8. Fiddler大师之路系列(一)
欢迎添加我们的搜狗测试微信号,与我们一起聊聊测试。