51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2009|回复: 0
打印 上一主题 下一主题

【我分享】Android自动化测试(Jenkins+Robotium+Ant+Junit)[PART TWO]

[复制链接]
  • TA的每日心情
    慵懒
    2017-7-9 10:38
  • 签到天数: 13 天

    连续签到: 1 天

    [LV.3]测试连长

    跳转到指定楼层
    1#
    发表于 2015-1-7 09:00:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    5、 xml转化为html
    build.xml只需要加入这一段代码:
    <target name="junitreport">
    <junitreport todir="${junit.report.dir}">
    <fileset dir="${junit.report.dir}">
    <include name="TEST-*.xml" />
    </fileset>
    <report format="frames" todir="${junit.report.dir}/html" />
    </junitreport>
    </target>
    6、 ant执行build.xml
    这个很重要,当时我在这块花了很长时间,原因是我前段时间刚做过selenium的测试,所以一直是按照那个的过程来的,没想到其实在Android端做测试的时候和在网页做测试的时候是完全不同的。
    Build.xml在这里是可以自动生成的,执行命令:
    dos命令在project下 输入 android update test-project -p[project路径] -m[project路径
    然后在dos命令中输入 ant test   就可以运行测试
    生成之后可以再按照你的要求进行修改
    7、 log\screenshots
    Android整个的自动化测试中,生成的日志以及截图都是保存在Android模拟器上的,所以还有一步你需要做的就是将这个文件pull到你本机上,以方便查看。这个pull完全可以加在build.xml中,因为我是走了很多弯路,所以代码就直接附在下面了:
    <echo level="info"> pull log...</echo>
    <exec executable="${adb}" failonerror="true">
    <arg line="${adb.device.arg}"/>
    <arg value="pull"/>
    <arg value="/sdcard/Logs/${user.locale}/documentscloud.log"/>
    <arg value="${tested.project.dir}\reports\${project.name}\${user.locale}"/>
    </exec>
    <echo level="info"> pull screenshots...</echo>
    <exec executable="${adb}" failonerror="true">
    <arg line="${adb.device.arg}"/>
    <arg value="pull"/>
    <arg value="/sdcard/Robotium-Screenshots/${user.locale}"/>
    <arg value="${tested.project.dir}\reports\${project.name}\${user.locale}\screenshots"/>
    </exec>
    8、 AndroidManifest.xml
    Android的这个文件也相当重要。这个是在你新建project就默认生成的,你真正用的时候只要把你需要修改的修改一下就好了。
    比较重要的有:
    <instrumentation
            android:name="testrunnertwo.InstrumentationTestRunner"
            android:targetPackage="com.oracle.webcenter.cloud.documents.android" />
    以及一些权限问题,类似:
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
    这些权限都是根据你真正测试过程中的需要添加的
    9、 InstrumentationTestRunner
    下面要说的就是InstrumentationTestRunner,这个我最开始也是饶了很大一圈,最开始想直接用junit,结果发现一直有问题,然后一直改,后来才发现行不通,要记住:robotium的测试和selenium的测试是不同的。
    Android单元测试的主入口,相当于JunitTestRunner的作用。


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-16 13:08 , Processed in 0.063577 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表