在自动化测试中,UI上经常有一些控件是没有名称的,那么此时,就可以通过id来找到这些控件。

案例:对两个EditText进行测试

  1. package com.tangbc.tedit.test;
  2. import org.junit.After;
  3. import org.junit.Before;
  4. import org.junit.Test;
  5. import android.test.ActivityInstrumentationTestCase2;
  6. import android.view.View;
  7. import android.widget.EditText;
  8. import com.robotium.solo.Solo;
  9. import com.tangbc.tedit.MainActivity;
  10. import com.tangbc.tedit.R;
  11. public class EditTest extends ActivityInstrumentationTestCase2{
  12. private Solo solo;
  13. public EditTest() {
  14. super(MainActivity.class);
  15. }
  16. @Before
  17. public void setUp() throws Exception {
  18. solo = new Solo(getInstrumentation(), getActivity());
  19. }
  20. @After
  21. public void tearDown() throws Exception {
  22. solo.finishOpenedActivities();
  23. }
  24. @Test
  25. public void test() {
  26. EditText enter = (EditText)solo.getView(R.id.enterText);
  27. solo.enterText(enter, "this is enter text");
  28. solo.sleep(2000);
  29. int typeId = solo.getCurrentActivity().getResources().getIdentifier("typeText", "id", "com.tangbc.tedit");
  30. View typeView = solo.getView(typeId);
  31. solo.typeText((EditText)typeView, "this is type text");
  32. solo.sleep(2000);
  33. }
  34. }

【转载:http://blog.csdn.net/tt75281920/article/details/26929549】

Robotium--通过Id寻找控件的更多相关文章

  1. 根据控件Id得到控件

    在做动态获取控件时,时常需要根据Id得到控件,并对该控件进行操作,此时用 /// <summary>        /// 根据控件id得到控件        /// </summa ...

  2. 关于MFC控件删除出现“具有该ID的控件已存在”这样的情况的解决方案,详细,网上都没有这么详细的,我是“深受其害”,所以想将详细的方法分享出去。

    网上关于MFC控件删除出现“具有该ID的控件已存在”这样的情况,在网上找了很多关于这方面的东西,但是都不是很全,也不容易弄明白.现在问我直接通过一个项目和图片的形式和大家一块分享一个这个解决方法(如有 ...

  3. Flex编程注意之直接获取某个组件的对象(this[]用法)通过id获取控件

    有这样一个需求:假如你new了一百次Button,同时这些button的id分别赋值如btn1.id = "button1"; btn2.id = "button2&qu ...

  4. ASP.net 前台页面通过ID获取控件

    asp.net的服务器控件的ID通常只能在服务器端很好的识别,客户端需要通过ClientID获得控件 1.通过js获得   var controlID = "<%=controlID. ...

  5. 使用FindControl("id")查找控件 返回值都是Null的问题

    做了一个通过字符串ID查找页面控件并且给页面控件赋值的功能,过程中遇到了this.FindControl("id")返回值都是Null的问题,记录一下解决办法. 问题的原因是我所要 ...

  6. layout_toLeftOf = “@id/XX” 提示找不到该id的控件

    调布局的时候,需要把一个控件A放在另一个控件B的左边,我的xml布局文件是按照顺序从左到右定义的控件,所以先定义的控件A,然后控件B,在控件A的属性中,定义 android:layout_toLeft ...

  7. JQuery 遍历没有id的控件

    html代码: <tr> <td field="ck" > <div><input type="checkbox" / ...

  8. 在DataList、Repeater的HeaderTemplate和FooterTemplate模板中寻找控件FindControl

    [程序代码] <asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> ...

  9. jquery.validate.js使用id验证控件

    jquery.validate.js默认的是元素的name. 例如:<input name="username" id="username" size=& ...

随机推荐

  1. c# 使用递归 循环遍历导航树结构 并解析

    1.数据书库结构 1 家用电器 0 一级菜单 2 手机.数码.京东通信 0 一级菜单 3 电脑.办公 0 一级菜单 4 家具.家居.厨房 0 一级菜单 5 男装.女装.童装.内衣 0 一级菜单 6 个 ...

  2. DropDownList 控件

    今天打算学习下dropdownlist控件的取值,当你通过数据库控件或dataset绑定值后,但又希望显示指定的值,这可不是简单的值绑定就OK,上网搜了一些资料,想彻底了解哈,后面发现其中有这么大的奥 ...

  3. 你好,C++(11)如何用string数据类型表示一串文字?根据初始值自动推断数据类型的auto关键字(C++ 11)

    3.5.2  字符串类型 使用char类型的变量我们可以表示单个字符,那么,我们又该如何表示拥有多个字符的字符串呢? 我们注意到,一个字符串是由多个字符串连起来形成的.很自然地,一种最简单直接的方法就 ...

  4. Nginx配置文件nginx.conf详细说明

    Nginx配置文件nginx.conf详细说明 #worker_processes 8; #worker_cpu_affinity 00000001 00000010 00000100 0000100 ...

  5. js 判断url的?后参数是否包含某个字符串

    function GetQueryString(name){    var reg=eval("/"+name+"/g");   var r = window. ...

  6. hibernate的get、load的方法的区别,IllegalArgument异常

    关于hibernate中的load,get,以及延迟加载问题 今天在使用hibernate时,发现一异常: could not initialize proxy - no Session 查询资料之后 ...

  7. javascript写的ajax请求

    <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> &l ...

  8. Json处理函数json_encode json_decode

    json_decode — 对 JSON 格式的字符串进行编码 mixed json_decode ( string $json [, bool $assoc = false [, int $dept ...

  9. 延迟加载并渐现内容的jquery插件lazyFade

    http://www.jqcool.net/demo/201412/jquery-lazyfade/

  10. C语言基础学习运算符-逻辑运算符

    逻辑运算符 逻辑运算符是根据表达式的值来返回真值或是假值.C语言中的逻辑运算符就三种,如下表所示: 列如: 更多学习内容,就在码芽网http://www.mayacoder.com/lesson/in ...