Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何只运行一个测试?_Java_Android_Eclipse_Testing_Robotium - Fatal编程技术网

Java 如何只运行一个测试?

Java 如何只运行一个测试?,java,android,eclipse,testing,robotium,Java,Android,Eclipse,Testing,Robotium,我是个新手,我有个问题 我正在为我在互联网上找到的一个简单应用程序编写测试。现在,我的代码就是这样的 package com.example.test.test; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.test.ActivityInstrumentationTestCase2; import android.test.suiteb

我是个新手,我有个问题

我正在为我在互联网上找到的一个简单应用程序编写测试。现在,我的代码就是这样的

package com.example.test.test;

import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.test.ActivityInstrumentationTestCase2;
import android.test.suitebuilder.annotation.Smoke;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.robotium.solo.Solo;
import com.example.test.MainActivity;
import com.example.test.R;


public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> {

private Solo solo;

    public MainActivityTest() {
    super("com.example.test", MainActivity.class);

}
@Override
public void setUp() throws Exception {
    super.setUp();
    solo = new Solo(getInstrumentation(), getActivity());
}


public void testClickShowButton() throws Exception {
    solo.clickOnView(solo.getView(R.id.button1));
    assertTrue(solo.searchText("Witaj"));
}
public void testClickClearButton() throws Exception {
    solo.clickOnView(solo.getView(R.id.button2));
}   
public void testClickClickMeButton() throws Exception {
    solo.clickOnView(solo.getView(R.id.button3));
    assertTrue(solo.searchText("No hej co tam?"));
}


@Override
public void tearDown() throws Exception {
    solo.finishOpenedActivities();
    }

    }
package com.example.test.test;
导入android.os.Bundle;
导入android.app.Activity;
导入android.content.Context;
导入android.test.ActivityInstrumentationTestCase2;
导入android.test.suitebuilder.annotation.Smoke;
导入android.view.Menu;
导入android.view.view;
导入android.widget.Button;
导入android.widget.EditText;
导入android.widget.Toast;
导入com.robotium.solo.solo;
导入com.example.test.main活动;
导入com.example.test.R;
公共类MainActivityTest扩展ActivityInstrumentationTestCase2{
私人独奏;
公共维护活动测试(){
super(“com.example.test”,MainActivity.class);
}
@凌驾
public void setUp()引发异常{
super.setUp();
solo=新的solo(getInstrumentation(),getActivity());
}
public void testClickShowButton()引发异常{
solo.clickOnView(solo.getView(R.id.button1));
assertTrue(solo.searchText(“Witaj”);
}
public void testClickClearButton()引发异常{
solo.clickOnView(solo.getView(R.id.button2));
}   
public void testClickMeButton()引发异常{
solo.clickOnView(solo.getView(R.id.button3));
assertTrue(solo.searchText(“No-hej-co-tam?”);
}
@凌驾
public void tearDown()引发异常{
solo.finishOpenedActivities();
}
}
每当我运行这些测试时,它们总是同时运行。我想做的是只运行一个测试—单击第一个按钮。然后,我想手动执行第二个测试-单击第二个按钮。然后我想再次手动执行第三个测试-单击第三个按钮。 不幸的是,Eclipse坚持运行所有测试


另外,完全不相关:我想写一个测试,Robotium将在文本框中输入一些数据,然后Robotium将删除它。如何做到这一点?

如果您仅使用Eclipse运行单个测试,请转到Eclipse中的(显示测试结果的视图)。右键单击要运行的测试并运行它。它将运行,而不是其他

这也可用于在调试模式下在测试中启动

另外,完全不相关:我想写一个测试,Robotium将在文本框中输入一些数据,然后Robotium将删除它。我该怎么做

您可以使用变量来存储编辑框:

EditText FirsteditText = (EditText) solo.getView(R.id.EditText01);
solo.enterText(FirsteditText, String.valueOf("10"));
solo.clearEditText(FirsteditText);
或否:

solo.enterText(solo.getView(R.id.EditText01), String.valueOf("10"));
solo.clearEditText(solo.getView(R.id.EditText01));

似乎到目前为止您还无法搜索:。这很有帮助,非常感谢!所以我猜,我不能在代码中添加任何东西来阻止Robotium运行其他测试?不太可能,最好是在eclipse中保存3种不同的配置并全部启动它们。但是,您应该考虑创建一个更为工业化/自动化的安装程序,这样您就可以用一条命令行来查看。