之前为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,并 ...
随机推荐
- jmeter 正则表达式
1.抓好请求,对着接口文档筛选好请求后,添加正则表达式 2.查看结果树,找到要提取的参数 3.书写正则 4.关联一下 5.直接跑一边就好,包成功,从数据库取的话,如果name:user,就直接参数化: ...
- VC++中MessageBox的常见用法详解
消息框是个很常用的控件,属性比较多,本文列出了它的一些常用方法,及指出了它的一些应用场合. 1.MessageBox("这是一个最简单的消息框!"); ...
- Android通过xml生成创建View的过程解析
Android的布局方式有两种,一种是通过xml布局,一种是通过java代码布局,两种布局方式各有各的好处,当然也可以相互混合使用.很多人都习惯用xml布局,那xml布局是如何转换成view的呢?本文 ...
- scala 删除一个文件夹以及其子目录和文件
/** * 删除一个文件夹,及其子目录 @param dir */ def deleteDir(dir: File): Unit = { val files = dir.listFiles() fil ...
- Jenkins 使用 Build Flow 插件配置工作流任务依赖
Jenkins 使用 Build Flow 插件配置工作流任务依赖 Jenkins 多任务依赖方式的配置方法目前可以通过MultiJob Project 或者Build Flow 或者Piplelin ...
- C# winform截图、web Cropper图片剪切、上传
今天又来一弹,写了个小功能,windows 桌面截图,web剪切图片上传的功能. 废话不多说,直接上图: 1.winform 截屏功能 图1 主窗体 点击全屏截图,就已经全屏截图了,截图后,图片保存在 ...
- 对象初始化的完整过程(C#)
1.静态构造函数 在引入本文的主题之前,我们先来铺垫一下吧,看看静态构造函数的概念及用途. C#中允许创建无参数构造函数,该函数仅执行一次.它一般被用来初始化静态字段.CLR不能保证在某个特定时刻执行 ...
- AJAX get/post;
$.ajax({ dataType: "json", type: "POST", url: "地址(/api/products)", dat ...
- jquery点击页面其他位置隐藏div
$("#btnAdd").on('click', function (e) { $("#setUp").toggle(); $(document).one('c ...
- c++11新特性总结(转。加上重点)
1.类型与变量相关 1.1.nullptr: 取代了NULL,专用于空指针 1.2.constexpr: 近似const, 可以修饰变量,也可以修饰函数, 修饰变量如: const int globa ...