Weinre是一个类似于普通浏览器的inspector功能的一个软件工具。
- 调研的目的:我们在写android自动化测试用例涉及到webview的时候,抓取页面元素非常苦恼。
通常的做法是:跑一些脚本,通过webview提供的接口获取webview的URL。再设置浏览器的代理,然后通过浏览器的web developer tools来查找页面元素。
而Weinre的作用在于它提供了一个server端和client端,能直接对android的emulator进行页面元素获取。 - 优劣对比:
优势:使用Weinre的好处在于操作过程简便。能直接对android的emulator进行页面元素获取。
劣势:需要在页面代码中绑定一个js包。用来和server端通信。 - 支持多平台:同时支持android和IOS系统
支持多用户模式操作。 - 下载安装包:https://github.com/phonegap/weinre/archives/master
- 在server端需要有java环境,使用java命令启动server: java -jar weinre.jar –httpPort 8081
或者你可以在配置文件 ~/.weinre/server.properties 中配置。
淘宝内部可以访问http://automan.taobao.net:8081/;按照提示将 http://automan.taobao.net:8081/target/target-script-min.js#anonymous拷贝至您的页面中,打开您的emulator,会自动建立client和server的通信。这样你就可以通过浏览器控制android的emulator的webview了。anonymous为你的个人id,以区别于其它用户。这个id绑定了两个地方,一个是你打开的客户端eg:http://automan.taobao.net:8081/client/#anonymous,另一个就是你需要放到你的web页面里的js :http://automan.taobao.net:8081/target/target-script-min.js#anonymous。push your_html to_emulator_category 。
- 效果展示,主页
链接上server的client端:
可以通过左上角的几个toolbar对webview进行操作。
通过Elements tool可以获取页面元素: