一.    关于bundle无法导入中文参数

答:    将文件改为UTF-8格式

二.    关于对无法抓取的控件进行快速输入问题

答:    主要通过pressKeyCode方法,首先将光标锁定在输入处。

预先把String数据转化为KeyCode数组,然后再通过上述方法输入。

           for(int i=0;i<id.length();i++){
char c =id.charAt(i);
if(c >=48&&c <=57){
UiDevice.getInstance().pressKeyCode(c-41);
}else if(c >=97&&c <=122){
UiDevice.getInstance().pressKeyCode(c-68);
}else if(c >=65&&c <=90){
UiDevice.getInstance().pressKeyCode(59);
sleep(20);
UiDevice.getInstance().pressKeyCode(c-36);
}else if(c ==32){
UiDevice.getInstance().pressKeyCode(62);
}else{}}

三.     关于UiWatcher使用问题

答:    第一点:其触发在对某控件对象操作,却发现其对象不存在的情况下。

第二点:其触发会执行注册的UiWatcher对象的checkForCondition方法。

第三点:其需要先注册,才会有作用;如果没有需要,应尽早删除注册。

四.     关于点操作的严谨性问题

答:   尽可能勿用具体数值作为点操作坐标。

应根据长宽所占具体比例,以适应屏幕大小的变化。

五.     关于控件抓取条件的设置问题

答:   控件的抓取应主要以不变的属性为主,比如classname;同时还要兼顾其与同一界面的其它控件主要区别特性。

以能唯一的确定其控件,也尽可能的使其在维护时更轻便。

六.    关于测试方法的大小问题

答:    不要将很多操作放在同一个方法中,缺少了复用性。

根据测试逻辑,合理设置方法大小,分割复杂测试方法。

七.    关于测试信息的问题

答:    测试过程的中间信息,应尽可能简洁切详尽。

以方便精确定位脚本或Device问题所在。

八.    关于多系统uiautomator测试工程架构问题

答:    根据Java面向对象特性,采用三层架构,最底层为多系统复用方法;第二层为具体系统专属方法;最上层基本不动为测试方法管理层。

九.    关于uiautomator工程打包问题

答:    首先建立build.xml:

For Example  command:    android create uitest-project -n Test -t android-22 -p .

Ant打包

十.     关于Exception问题

答:    在Exception发生后,应该去截图当前屏幕。

UiAutomator 测试工程开发小结的更多相关文章

  1. AC6102 DDR2测试工程

    AC6102 DDR2测试工程 本文档介绍AC6102上DDR2存储器基于Verilog代码的测试过程.AC6102上使用了2片16bit的DDR2存储器组成了32bit的硬件总线.虽然是32bit硬 ...

  2. robotium 测试APK<一> 建立测试工程

    1.准备Android开发环境 2.准备签名工具http://www.troido.de/re-sign.jar 1.建立测试工程 打开Eclipse,点击File->New一个Android ...

  3. pdfjs viewer 开发小结

    此文已由作者吴家联授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 1. pdfjs库简介 PDF.js 是由Mozilla 主导推出的可以将PDF文件转换为H5页面进行展示的 ...

  4. Git工程开发实践(四)——Git分支管理策略

    A successful Git branching model https://nvie.com/posts/a-successful-git-branching-model/ Git工程开发实践( ...

  5. 学习版pytest内核测试平台开发万字长文入门篇

    前言 2021年,测试平台如雨后春笋般冒了出来,我就是其中一员,写了一款pytest内核测试平台,在公司落地.分享出来后,有同学觉得挺不错,希望能开源,本着"公司代码不要传到网上去,以免引起 ...

  6. APP敏捷测试,测试和开发并行!

    测试和开发具有同等重要的作用,从一开始,测试和开发就是相向而行的.测试是开发团队的一支独立的.重要的支柱力量. 测试要具备独立性,独立分析业务需求,独立配置测试环境,独立编写测试脚本,独立开发测试工具 ...

  7. Android中使用自身携带的Junit新建一个测试工程

    1.新建立一个Android工程 package com.shellway.junit; public class Service { public int divide(int a,int b){ ...

  8. Scrum敏捷软件开发之技术实践——测试驱动开发TDD

    重复无聊的定义 测试驱动开发,英文全称Test-Driven Development,简称TDD,是一种不同于传统软件开发流程的新型的开发方法.它要求在编写某个功能的代码之前先编写测试代码,然后只编写 ...

  9. ActiveX添加测试工程, 出现的问题[非选择性参数][找不到成员]

    ActiveX 添加测试工程 1.新建工程MFC application, 2.添加完毕,在main Dialog中, 右键[Insert Activex Control],选择你的ActiveX控件 ...

随机推荐

  1. 【OpenStack】OpenStack系列13之Nova源码解析与API扩展

    学习思路 议程:代码结构-主干流程-分层架构-业务模型-数据库模型-消息模型 分布式架构:Api:横向扩展    rpc:纵向扩展 分层架构:Controller接口层.View/Manager逻辑层 ...

  2. string s = null 和 string s = “”的区别

    string s = null; 表示一个空串,没有占用了空间,不在内存中开辟空间 string s = "";在内存中开辟空间,但空间中没有值(""也是一个字 ...

  3. object-c面向对象1

    ---恢复内容开始--- 类,对象,方法,属性. 类是object-c一种重要的数据类型,是组成object-c程序的基本要素.object-c的类声明和实现包括两个部分:接口和实现部分. @inte ...

  4. 11.python之线程,协程,进程,

    一,进程与线程 1.什么是线程 线程是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行 ...

  5. Android 设置旋转朝向

    在AndroidMenifest.xml中activity标签中,添加一个属性 android:screenOrientation="landscape"

  6. C++基础(1)

    1.关于继承及访问. C++中 public,protected, private 访问标号小结,即访问标号使用限制. 第一:private, public, protected 访问标号的访问范围. ...

  7. linux常见问题集锦-1

    http://www.cnblogs.com/itech/archive/2011/02/12/1952857.html 感谢作者分享 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 . ...

  8. 学习BigDecimal用法

    一.简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更 ...

  9. .net学习之.net和C#关系、运行过程、数据类型、类型转换、值类型和引用类型、数组以及方法参数等

    1..net 和 C# 的关系.net 是一个平台,C#是种语言,C#语言可以通过.net平台来编写.部署.运行.net应用程序,C#通过.net平台开发.net应用程序2..net平台的重要组成FC ...

  10. loj 1156(二分+最大流)

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=26870 思路:由于溢出问题,wa了半天,还以为构图错了呢,查了半天 ...