2014-02-16 59 views
1

我对此很新,我有一个问题。如何只运行一个测试?

我正在测试一个简单的应用程序,我在互联网上找到。现在,这是我的代码看起来像

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(); 
    } 

    } 

而且,每当我运行这些测试时,他们总是在同一时间运行。我想要做的就是运行一个测试 - 点击第一个按钮。然后,我想手动进行第二次测试 - 点击第二个按钮。然后,我想再次手动进行第三次测试 - 点击第三个按钮。不幸的是,Eclipse坚持运行所有测试。

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

+1

看来你一直无法搜寻,因此至今:HTTP://计算器的.com /问题/ 13605774 /如何对运行一个单方法-IN-A-的junit -4-测试类。 – Smutje

回答

1

如果您只使用Eclipse来运行您的单个测试,那么请转至Eclipse中的junit runner view(显示测试结果的视图)。右键点击你想运行的测试并运行它。它将运行,而不是其他人。

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

+0

这有帮助,非常感谢! 所以我猜,我不能添加任何东西来阻止Robotium运行其他测试的代码? – user3271093

+0

不是,也许最好的办法是在eclipse中保存3种不同的配置并启动它们。但是您应该考虑创建更多的工业/自动化设置,以便您可以使用单个命令行进行查看。 – Snicolas

0

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

您CAND使用一个变量来存储您的编辑框:

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)); 
相关问题