雾山的Robotium学习笔记---环境搭建及入门示例
2014-07-04 15:01
501 查看
环境搭建(window):
安装JDK以及集成Android Sdk的eclipise。
入门:
1,下载Robotium Solo 5.1,点我下载
2,开启eclipse,并导入工程(代码在最下面)
3,创建测试工程
new --- project --- Android Test Project
4,输入测试工程名,然后点击next
5,选择被测工程TButton,并点击finish
6,在测试工程中创建libs文件夹(有的教程是创建lib的文件夹的,这里需要说明一下,如果是比较新的ADT的话,项目根下新建一个libs目录,把jar包放在哪个目录里,会自动添加到build path里去,只有就能正确引用到了。)
7,将下载的robotium-solo-5.1.jar文件拷到libs文件夹
8,将测试工程中的AndroidManifest.xml文件修改如下(一般情况下,创建完工程会自动添加的,若没有请自行添加)
9,创建junit test case,选择junit4,并输入类名,点击finish
10,打开新建的测试类,修改继承ActivityInstrumentationTestCase2,并创建该类的构造函数,引用方法setUp()和tearDown()
11,编写完测试用例后,连上设备,右击测试类,选择Android junit Test,此时就会开始执行测试用例了。
Ps:如果运行时,报如下错误
则是因为没有引入juint,查看配置里面是否勾选了junit。
Project --> Properties --> Java Build Path --> Order and Export
测试用例源码:
[java]
view plaincopyprint?
package com.tangbc.tbutton.test;
import org.junit.Test;
import android.test.ActivityInstrumentationTestCase2;
import com.robotium.solo.Solo;
import com.tangbc.tbutton.MainActivity;
public class TButtonTest extends ActivityInstrumentationTestCase2{
private Solo solo;
public TButtonTest() {
super(MainActivity.class);
}
@Override
protected void setUp() throws Exception {
solo = new Solo(getInstrumentation(),getActivity());
}
@Override
protected void tearDown() throws Exception {
solo.finishOpenedActivities();
}
@Test
public void test() {
//solo.clickOnMenuItem("Settings");
for (int i = 0; i < 10; i ++){
solo.clickOnButton("原始数据");
}
solo.clickOnButton("跳转");
solo.goBack();
solo.clickOnButton("原始数据");
}
}
被测工程源码:
主页面:
[java]
view plaincopyprint?
package com.tangbc.tbutton;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
private Button button;
private TextView textView;
private static int i = 0;
private Button skipButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.button);
textView = (TextView)findViewById(R.id.textView);
button.setOnClickListener(new ButtonListener());
skipButton = (Button)findViewById(R.id.skipbutton);
skipButton.setOnClickListener(new SkipButtonListener());
}
class ButtonListener implements OnClickListener{
@Override
public void onClick(View v) {
i++;
System.out.println(i);
textView.setText(String.valueOf(i));
}
}
class SkipButtonListener implements OnClickListener{
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setClass(MainActivity.this, SceondAcitvity.class);
startActivity(intent);
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
副页面:
[java]
view plaincopyprint?
package com.tangbc.tbutton; import android.app.Activity; import android.content.Intent; import android.os.Bundle; public class SceondAcitvity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.second); Intent intent = getIntent(); } }
本文参考:http://www.robotium.cn/archives/210
安装JDK以及集成Android Sdk的eclipise。
入门:
1,下载Robotium Solo 5.1,点我下载
2,开启eclipse,并导入工程(代码在最下面)
3,创建测试工程
new --- project --- Android Test Project
4,输入测试工程名,然后点击next
5,选择被测工程TButton,并点击finish
6,在测试工程中创建libs文件夹(有的教程是创建lib的文件夹的,这里需要说明一下,如果是比较新的ADT的话,项目根下新建一个libs目录,把jar包放在哪个目录里,会自动添加到build path里去,只有就能正确引用到了。)
7,将下载的robotium-solo-5.1.jar文件拷到libs文件夹
8,将测试工程中的AndroidManifest.xml文件修改如下(一般情况下,创建完工程会自动添加的,若没有请自行添加)
9,创建junit test case,选择junit4,并输入类名,点击finish
10,打开新建的测试类,修改继承ActivityInstrumentationTestCase2,并创建该类的构造函数,引用方法setUp()和tearDown()
11,编写完测试用例后,连上设备,右击测试类,选择Android junit Test,此时就会开始执行测试用例了。
Ps:如果运行时,报如下错误
则是因为没有引入juint,查看配置里面是否勾选了junit。
Project --> Properties --> Java Build Path --> Order and Export
测试用例源码:
[java]
view plaincopyprint?
package com.tangbc.tbutton.test;
import org.junit.Test;
import android.test.ActivityInstrumentationTestCase2;
import com.robotium.solo.Solo;
import com.tangbc.tbutton.MainActivity;
public class TButtonTest extends ActivityInstrumentationTestCase2{
private Solo solo;
public TButtonTest() {
super(MainActivity.class);
}
@Override
protected void setUp() throws Exception {
solo = new Solo(getInstrumentation(),getActivity());
}
@Override
protected void tearDown() throws Exception {
solo.finishOpenedActivities();
}
@Test
public void test() {
//solo.clickOnMenuItem("Settings");
for (int i = 0; i < 10; i ++){
solo.clickOnButton("原始数据");
}
solo.clickOnButton("跳转");
solo.goBack();
solo.clickOnButton("原始数据");
}
}
package com.tangbc.tbutton.test; import org.junit.Test; import android.test.ActivityInstrumentationTestCase2; import com.robotium.solo.Solo; import com.tangbc.tbutton.MainActivity; public class TButtonTest extends ActivityInstrumentationTestCase2{ private Solo solo; public TButtonTest() { super(MainActivity.class); } @Override protected void setUp() throws Exception { solo = new Solo(getInstrumentation(),getActivity()); } @Override protected void tearDown() throws Exception { solo.finishOpenedActivities(); } @Test public void test() { //solo.clickOnMenuItem("Settings"); for (int i = 0; i < 10; i ++){ solo.clickOnButton("原始数据"); } solo.clickOnButton("跳转"); solo.goBack(); solo.clickOnButton("原始数据"); } }
被测工程源码:
主页面:
[java]
view plaincopyprint?
package com.tangbc.tbutton;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
private Button button;
private TextView textView;
private static int i = 0;
private Button skipButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.button);
textView = (TextView)findViewById(R.id.textView);
button.setOnClickListener(new ButtonListener());
skipButton = (Button)findViewById(R.id.skipbutton);
skipButton.setOnClickListener(new SkipButtonListener());
}
class ButtonListener implements OnClickListener{
@Override
public void onClick(View v) {
i++;
System.out.println(i);
textView.setText(String.valueOf(i));
}
}
class SkipButtonListener implements OnClickListener{
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setClass(MainActivity.this, SceondAcitvity.class);
startActivity(intent);
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
package com.tangbc.tbutton; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class MainActivity extends Activity { private Button button; private TextView textView; private static int i = 0; private Button skipButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button)findViewById(R.id.button); textView = (TextView)findViewById(R.id.textView); button.setOnClickListener(new ButtonListener()); skipButton = (Button)findViewById(R.id.skipbutton); skipButton.setOnClickListener(new SkipButtonListener()); } class ButtonListener implements OnClickListener{ @Override public void onClick(View v) { i++; System.out.println(i); textView.setText(String.valueOf(i)); } } class SkipButtonListener implements OnClickListener{ @Override public void onClick(View v) { Intent intent = new Intent(); intent.setClass(MainActivity.this, SceondAcitvity.class); startActivity(intent); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
副页面:
[java]
view plaincopyprint?
package com.tangbc.tbutton; import android.app.Activity; import android.content.Intent; import android.os.Bundle; public class SceondAcitvity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.second); Intent intent = getIntent(); } }
package com.tangbc.tbutton; import android.app.Activity; import android.content.Intent; import android.os.Bundle; public class SceondAcitvity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.second); Intent intent = getIntent(); } }
本文参考:http://www.robotium.cn/archives/210
相关文章推荐
- 雾山的Robotium学习笔记---环境搭建及入门示例
- Robotium学习笔记---环境搭建及入门示例
- 雾山的Robotium学习笔记---环境搭建及入门示例
- Robotium学习笔记---环境搭建及入门示例
- python基础入门学习笔记(Python环境搭建)
- python基础入门学习笔记(Python环境搭建)
- Adroid学习笔记-入门资料以及V2.3系统开发环境搭建
- Quick cocos2dx-Lua(V3.3R1)学习笔记(9)-----搭建安卓打包环境,用官方示例anysdk生成apk运行
- struts2学习笔记 -- day01struts开发包详解、入门案例环境搭建
- Quick cocos2dx-Lua(V3.3R1)学习笔记(十)-----搭建安卓打包环境,用官方示例anysdk生成apk运行
- Android入门学习笔记(二):Android开发环境的搭建
- 【Robotium学习笔记】搭建环境篇(2016.3.1)
- go micro 学习笔记 2:环境搭建(可运行示例)
- Django学习笔记(一)环境搭建基础教程示例
- 1. 笔记JAVA框架学习——Spring入门环境搭建及helloworld
- java学习笔记(从搭建环境到入门java)
- 持续集成学习笔记-入门篇(3)持续集成环境的搭建
- Robotium---环境搭建及入门示例
- Robotium---环境搭建及入门示例
- Android开发学习笔记(三)——基于Eclipse开发环境的搭建及HelloAndroid示例程序的创建