zoukankan      html  css  js  c++  java
  • 安卓自动化robotium工具简单使用(二)

    在学习安卓的这段时间里,刚好有个朋友有一个APP的应用需要开发。

    我马上就动手开始做着试试,在完成开发的同时写了相应的自动化测试代码,使用的是robotium。

    才接触安卓没几天,写的不太好,如果有好心人路过请指点一二,谢谢。 

    目标

    加快开发测试迭代效率,代替手工的回归测试工作。

     

    设计思路

     

     

     

    目前用于启动测试用例的类是UIAutoTest

    测试用例的设计按照页面模块化来分配

    每个页面(fragmentactivity)为一个模块,定义了通用接口RegularTestPage

     execute()  执行测试用例

     enter()    进入测试用例页面

     enterNextPage() 进入下一个页面 

    每个页面都有一个checkpoint类作为检查点--测试用例的设计

    c baseConfig类作为整体的参数配置

    3 DaoService用于做数据库的操作,我个人推荐数据库用mongoDb数据库,我认为测试的自动化最关键是要简单和可维护性强,这样才便于迭代。

    MongoDB的代码我之前就写好了挂在我的博客园里

    http://www.cnblogs.com/sunfan1988/p/4169447.html

    缓存

    测试结果具有生命周期,这样防止重复跑测试用例。

    异常处理机制

    利用反射,根据传入的对象统一进行try/catch。增加回滚机制让测试用例能在失败后立刻重新执行,提高稳定性。

    6网页版前台操作

    我推荐做成BS结构的,这样大家都可以方便的使用自动化测试

    一般我会引入SpringMVC框架来完成这个开发

    其他

    邮件、测试数据挖掘等

     

    使用说明

    1执行测试用例的话,需要逐个添加需要的页面即可。(这里如果再设计一下的话,或许约定好名字或者订好annotation通过反射自动加载)

    关于页面测试用例的添加,在这边添加方法,然后去测试页面调用即可

     

    被测页面(添加测试用例就在execute

    预留接口

    数据库接口

    页面接口

     

    今后的扩展

    发送测试报告邮件,邮件代码已经写好,由于我之前都用的maven,这里引包不太方便,暂时没有放进来。

    我的话更倾向与用MONGO_DB作为数据库,代码已经写好。暂时没有放入

    页面化、或者客户端化支持更便捷的操作。

    异常的回滚、缓存执行结果机制、

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    window.location.href 失效的解决办法
    jquery.pagination.js分页
    64位WIN7+oracle11g+plsql安装
    uiZjs入门
    dateTimePicker的使用,时间控件
    jquery+ajax(用ajax.dll)实现无刷新分页
    用Jquery获取select的value和text值
    Asp.net上传文件Request.files获取不到文件
    手动导出Excel方法
    编写高质量代码改善C#程序的157个建议——建议121:为应用程序设定运行权限
  • 原文地址:https://www.cnblogs.com/sunfan1988/p/4377427.html
Copyright © 2011-2022 走看看