之前为dd写的一个小的demo(robotium)
测试类的编写:
package com.m1905.dd.mobile;
import com.robotium.solo.By;
import com.robotium.solo.Solo;
import android.test.ActivityInstrumentationTestCase2;
public class testdd extends ActivityInstrumentationTestCase2 { private Solo solo;
private static String mainActivity = "com.m1905.dd.mobile.act.StartAct";
private static String PackName = "com.m1905.dd.mobile";
private static Class<?> launchActivityClass;
static{
try{
launchActivityClass = Class.forName(mainActivity);
}catch(ClassNotFoundException e){
throw new RuntimeException(e);
}
} @SuppressWarnings("unchecked")
public testdd() {
super(launchActivityClass);
// TODO Auto-generated constructor stub
} @Override
public void setUp() throws Exception {
super.setUp();
solo = new Solo(getInstrumentation(),getActivity());
} @Override
public void tearDown() throws Exception {
solo.finishOpenedActivities();
} public void testGetHaoYou() throws Exception{
//登陆页面后首先完成登陆的操作
solo.clickOnView(solo.getView("rbnMine"));
solo.clickOnImage(0);
Thread.sleep(2000);
solo.clearEditText(0);
solo.enterText((android.widget.EditText) solo.getView("edtUname"), "sylovezp");
solo.enterText((android.widget.EditText) solo.getView("edtUpass"),"qqqqqq");
Thread.sleep(1000);
solo.clickOnButton("登录");
//进入活动页面
solo.clickOnView(solo.getView("rbnActivities")); //切换我的活动/热门活动/正在点评/已结束活动
solo.clickOnButton(0);
solo.clickOnText("我的活动");
solo.scrollDown();
solo.clickOnButton(0);
solo.clickOnText("正在点评");
solo.scrollDown();
solo.clickOnButton(0);
solo.clickOnText("已结束");
solo.scrollDown();
solo.clickOnButton(0);
solo.clickOnText("热门活动");
Thread.sleep(2000);
//进入热门活动第一条中的活动详情页
solo.clickOnImage(0);
//切换活动规则/关于影片/他们报名啦页面
solo.clickOnButton("关于影片");
//观看视频
solo.clickOnView(solo.getView("btnActPlay"));
Thread.sleep(3000);
solo.clickOnView(solo.getView("btnBack"));
//报名参加,看看是否正确记录手机号
solo.clickOnText("我要报名");
solo.clickOnView(solo.getView("btnNext"));
solo.clickOnView(solo.getView("btnBack")); //退出活动详情页
solo.clickOnView(solo.getView("btnBack"));
//以下执行一个简单的登陆/退出的操作 //findElementById("rbnMine").doClick();//athrun
solo.clickOnView(solo.getView("rbnMine"));//当一个页面文本名称出现多个时,就不能用text了,此时可以用这个方法
Thread.sleep(1000);
solo.clickOnText("系统设置");
Thread.sleep(1000);
solo.clickOnButton("退出登录");
Thread.sleep(1000); } }
配置文件的配置:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.m1905.dd.mobile.test"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk android:minSdkVersion="17" /> <instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.m1905.dd.mobile" /> <application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<uses-library android:name="android.test.runner" />
</application> </manifest>
之前为dd写的一个小的demo(robotium)的更多相关文章
- canvas写的一个小时钟demo
<!DOCTYPE html> <html> <head> <title>HTML5 Canvas Demo of clock</title> ...
- 1.类的加载机制_继承类的加载(一个小的Demo)说明
今天我们先来一个小的Demo来了解类的加载顺序. public class ClassLoaderTest { public static void main(String[] args) { Sys ...
- 用bat写的一个小病毒
最近看了一点bat的知识,具体说是看了一个博客:http://blog.csdn.net/qsyzb/article/details/17364581 用了三天才看完=.=,感觉作者整理整理可以把博客 ...
- 原生JS写了一个小demo,根据输入的数字生成不同背景颜色的小方块儿~
昨天练习写了这个小demo,个人觉得通过设置定位元素left和top的值,来实现换行的功能,这种方法很巧妙~ 另外,如下代码中的随机颜色的获取,还请各位前辈多多指教:需要改进的地方:或者有没有更好的方 ...
- QT写的一个小工具:阿里云MQTT连接参数生成器.
一.工具介绍. 最近在研究MQTT协议联网的一些问题,现在主流的物联网平台都支持MQTT协议. 在做阿里云平台连接测试的时候,连接参数的生成没有好用的工具, 所以就自己写了一个. 这个工具主要用于阿里 ...
- js 利用throw 写的一个小程序
在下边的小程序中比较特殊的是使用isNaN()函数判断一个参数是不是数字, <!DOCTYPE html> <!DOCTYPE html> <html> <h ...
- [原创]基于html5新标签canvas写的一个小画板
最近刚学了canvas,写个小应用练习下 源代码 <!DOCTYPE> <html> <head> <meta http-equiv="Conten ...
- python3 自己写的一个小算法(比对中文文本相似度)
函数使用说明: 函数的三个参数分别是“匹配语句”,“匹配语料”,“相关度”: 匹配语句,和匹配预料中的语句匹配的语句,必须为字符串: 匹配语料,被匹配语句来匹配的语句列表,必须为列表: 相关度,函数只 ...
- 关于H标签 DL DT DD标签的一个小故事
看了一篇关于SEO论坛的论文,大概故事内容是:一个专业的销售公司,里面SEO 技术多多,可就是销售网站的SEO的情况极为恼火.这天,老板又招到了一个SEO,直接聘为SEO主管全权负责网站的SEO,并 ...
随机推荐
- linux网络管理员
1. 查看当前开启的所有网络服务 命令:netstat -a (all)显示所有选项,默认不显示LISTEN相关-t (tcp)仅显示tcp相关选项-u (udp)仅显示udp相关选项-n 拒绝显示别 ...
- python + selenium + Js 处理轮动条
selenium并不是万能的,有时候页面上操作无法实现的,这时候就需要借助JS来完成了. 常见场景: 当页面上的元素超过一屏后,想操作屏幕下方的元素,是不能直接定位到,会报元素不可见的. 这时候需要借 ...
- C++中break/Continue,exit/return的理解
刚才遇到了一个问题,大概是这样的. func1执行完成,进入func1Complete,其中switch处理func1返回的数据,如果返回数据是clear则重新执行func1. 测试的时候发现func ...
- Javascript的事件模型和Promise实现
1. Javascript的运行时模型——事件循环 JS的运行时是个单线程的运行时,它不像其他编程语言,比如C++,Java,C#这些可以进行多线程操作的语言.当它执行一个函数时,它只会一条路走到黑, ...
- nginx 内置参数
$args #这个变量等于请求行中的参数.$content_length #请求头中的Content-length字段.$content_type #请求头中的Content-Type字段.$docu ...
- Caffe任务池GPU模型图像识别
一开始我在网上找demo没有找到,在群里寻求帮助也没有得到结果,索性将网上的易语言模块反编译之后,提取出对应的dll以及代码,然后对照官方的c++代码,写出了下面的c#版本 /*** * @pName ...
- cesium编程入门(五)绘制形状
通过Entity添加形状 先来看一个添加立方体的例子 var viewer = new Cesium.Viewer('cesiumContainer'); var redBox = **viewer. ...
- WP8.1StoreApp(WP8.1RT)---SystemTray的变化
原Microsoft.Phone.Shell中的SystemTray,已经改到Windows.UI.ViewManagement中StatusBar了. 只能在代码中设置相关属性. 如: 1 2 3 ...
- AngularJS 常用语法
面板收缩(class=collapsed)与扩展(class=expand) <div ng-init="expand=false" data-ng-class=" ...
- asp.net mvc全局异常捕获
通过重写OnException方法形式实现. 1.自定义异常记录类并继承HandleErrorAttribute类. public class HandlerErrorAttribute : Hand ...