您的位置:首页 > Web前端 > HTML

robotium生成测试报告、html文件及发送邮件

2014-12-09 23:07 387 查看
利用Robotium框架把生成的报告导入到手机里,然后在用命令把报告pull到pc端就行了,参考的网址是: http://blog.csdn.net/onepiece2345/article/details/8165241 直接在他原有的基础之上进行了一些修改,同样是在测试工程中新建了一个InstrumentationTestRunner类,然后继承android.test.InstrumentationTestRunner。搞定这个类之后在AndroidManifest.xml中修改一下:

<instrumentation

android:name=”com.xxx.test.InstrumentationTestRunner”

android:targetPackage=”com.xxx.xxx”/>

name是修改InstrumentationTestRunner类的完整类名,targetPackage是被测应用的包名,在AndroidManifest.xml还要为应用添加sdcard的读写权限。

最后再指定运行方式,右键工程 Run As –》Run Configurations,指定下面的Instrumentation runner。



完成上述操作,运行一次就可以看到手机中多了xml文件,通过pull命令发送到电脑上。下边讲一下利用python解析xml并生成html报告,然后发送报告到指定的收件人,参考网址:
http://agileqa.org/2014/05/transfer-junit-xml-to-html-format-and-send-bymail。
1.因为我还要解析ios生成的plist报告,所以和安卓生成的报告略有不同。Python解析xml文件,我直接定义几个方法去解析每一条:



在plist文件中略有费劲,不过看了一下python通配符的知识外加大神指点,我的case格式为test01_02,然后直接利用: re1=r'test\d{2}_\d{2}$' 可以遍历出所有的testXX_XX ,d{2}表示匹配两位数字,$表示结束标记(防止下边有其他匹配)。而且每次遍历都会产生两个test01_02,所以通过下边的方法可以去掉其中的一个:



通过下边的方法遍历每一行的数据,因为每次遍历testcase和Pass或Fail结果对应,所以这种方法可以得到对应的字典,因为没有深入学习python,所以方法很挫:



2.得到testcase和对应的结果之后,然后就是拼接html页面。Pyh.py文件其实是拼接html页面的,我大概看了一下PyH是一个生成html页面的模块,html的标签都会对应一个Python对象,具体的其他方法还有待进一步深入理解,参考网址:
http://www.open-open.com/lib/view/home/1324432362608。
3.发送邮件,以后还要利用jenkins集成去实现自动发送,这个后期慢慢研究。之前在选择邮箱的时候,一直在纠结发送邮件的端口怎么去指定,直到后来大神给我指点,直接申请了个163邮箱,不用设置端口就能搞定,所以一直就这样了,不再更改。

4. /article/1280684.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: