2014-02-16 6 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 будет вводить некоторые данные в TextBox, а затем Robotium удалит его. Как мне это сделать?

+1

Кажется, вы не смогли найти SO до сих пор: HTTP: // StackOverflow .com/вопросы/13605774/как к запуску-а-одинарной метод-в-JUnit-4-тест-класса. – Smutje

ответ

1

Если вы используете только Eclipse для запуска своего единственного теста, перейдите к junit runner view в Eclipse (представление, которое отображает результат ваших тестов). Щелкните правой кнопкой мыши тест, который вы хотите запустить, и запустите его. Он будет запущен, а не другие.

Это также можно использовать для запуска в вашем тесте в режиме отладки.

+0

Это помогло, спасибо большое! Итак, я предполагаю, что я не могу добавить ничего в код, чтобы остановить Robotium от запуска других тестов? – user3271093

+0

Не совсем, может быть, лучше всего сохранить 3 разных конфигурации в eclipse и запустить их все. Но вам действительно стоит подумать о создании более промышленной/автоматизированной установки, чтобы вы могли видеть одну командную строку. – Snicolas

0

Кроме того, совершенно не связано: я хочу написать тест, где Robotium будет вводить некоторые данные в TextBox, а затем Robotium удалит его. Как мне это сделать?

вы используете канд переменную для хранения EditBox:

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)); 
Смежные вопросы