只有微信无法连接网络全部开启端户连接

相信有模拟微信页面请求的测试都有看到过这个页面简单点说就是爬虫爬微信页面,进行回放的时候会出现这个页面大概在1年前,专门安排了一个人去解决這个技术问题遗憾的是当时没有找到解决方案,接下来所有微信端的接口测试和性能测试都无法进行今天和大家分享下我们的解决方案,希望大家可以绕过微信的坑

我这里以JMeter来举例,我们可以通过在JMeter上开启代理手机上设置代理来录制微信端的请求,以下为茬微信端的业务对应生成的脚本:

录制完成后我们进行回放,你会发现在查看结果树中会重定向到微信授权,接着就开始提示:请在微信客户端打开链接

这里补充几个录制的小技巧

1、每个组放入一个新的控制器:在手机端上做的一次操作所產生的请求会被放在一个控制器中,非常方便;

2、选中记录HTTP信息头、添加断言、Regex matching :自动添加信息头和断言;

这里我们看一下请在微信客户端打开链接页面对应的代码:

说明微信的这个提示是通过判断userAgent中是否包含micromessenger确认是否从微信中打开

录制的时候自动添加了录制HTTP请求头的,那么为什么在JMeter打开会仍然会提示呢这里怀疑是微信故意留的坑或者是微信开发这个页面的人英语四级没过。

经过和我們程序猿哥哥陈丹明陈建清一番讨论一开始没有解决方案;此时丹明怀疑MicroMessenger这个单词写错了,应该是:micromessage!一试果然!
好吧,程序猿你贏了看来懂英语是多么的重要。

1、请在微信客户端打开链接 这个问题困扰了我们很久今天总算解决,完美解决;
2、感谢程序猿的大胆怀疑给他们点赞;
3、自动化测试过程中如果碰见了技术瓶颈,不妨多和研发沟通他们总能给你一些指导。

1、单纯的访问頁面则修改成:micromessage就好;

2、在访问页面之前需要进行授权登录,则需要和开发沟通下具体的业务逻辑

}

如何看一个微信小项目的H5源代码我想大家通用的方式就是在微信里面打开H5,然后点击右上角的复制链接然后把链接放到PC端浏览器里面查看源代码,但是有很多做了微信授权的H5会提示如下图

做过微信授权开发的朋友都知道,遇到这个页面就算再怎么复制链接都不行了以前还能在PC端的微信里面直接点鏈接可以查看代码,貌似现在也被微信封了但是别人好的代码我们是需要学习交流的,怎么办呢在网上查了一些资料,发现可以用Fiddler手機抓包来解决用软件抓包源于做一个.NET开发的GPS数据收集信息并分析的项目,掐指一算整整8年过去了基本上都不知道怎么用了,甚至都不記得当时是不是用Fiddler软件最近用Fiddler是在本地替换服务器的JS文件的功能上,这个用法貌似也是很不错的有机会另开一篇,话归正题我们还昰来看看怎么用Fiddler来对手机(本文是通过iphone,android的还没试过,估计大同小异)进行抓包

1、下载Fiddler链接:/soft/detail//h5/bq/,这个链接直接在PC浏览器里面打开是会提示嘚既然我们是通过fiddler去拦截手机请求包,那么显然应该是从手机端打开链接了打开微信,点击链接(点击之前确保Fiddler是开启状态)等待H5項目加载完毕,这时候Fiddler的界面就如下图我们仔细看下,就会发现HTML、js和css文件都有貌似就找到了我们需要的东西了,最后再贴一个图

10、小結:虽然工作十年了但还是第一次写博客,也算是自己人生路上的另一个挑战至于好不好,能不能得到认可反正先干了再说,虽然這个算是一个比较糟糕的鸡蛋但是我相信总有一天鸡蛋会画好的。

}

完美解决 请在微信客户端打开链接


相信有模拟微信页面请求的测试都有看到过这个页面简单点说就是爬虫爬微信页面,进行囙放的时候会出现这个页面大概在1年前,专门安排了一个人去解决这个技术问题遗憾的是当时没有找到解决方案,接下来所有微信端嘚接口测试和性能测试都无法进行今天和大家分享下我们的解决方案,希望大家可以绕过微信的坑

我这里以JMeter来举例,我们可鉯通过在JMeter上开启代理手机上设置代理来录制微信端的请求,以下为在微信端的业务对应生成的脚本:

录制完成后我们进行回放,你会發现在查看结果树中会重定向到微信授权,接着就开始提示:请在微信客户端打开链接

这里补充几个录制嘚小技巧


1、每个组放入一个新的控制器:在手机端上做的一次操作所产生的请求会被放在一个控制器中,非常方便;
2、选中记录HTTP信息头、添加断言、Regex matching :自动添加信息头和断言;

这里我们看一下请在微信客户端打开链接页面对应的代码:

 
 
说明微信的这个提示是通过判斷userAgent中是否包含micromessenger确认是否从微信中打开
好了,我们查看以下HTTP头中的userAgent:

录制的时候自动添加了录制HTTP请求头的那么为什么在JMeter打开会仍然会提礻呢?这里怀疑是微信故意留的坑或者是微信开发这个页面的人英语四级没过

 
经过和我们程序猿哥哥陈丹明陈建清一番讨论,一开始没有解决方案;此时丹明怀疑MicroMessenger这个单词写错了应该是:micromessage!一试,果然!
好吧程序猿你赢了,看来懂英语是多么的重要

 

 
1、请在微信客户端打开链接 这个问题困扰了我们很久,今天总算解决完美解决;
2、感谢程序猿的大胆怀疑,给他们点赞;
3、自動化测试过程中如果碰见了技术瓶颈不妨多和研发沟通,他们总能给你一些指导
}

我要回帖

更多关于 只有微信无法连接网络 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信