2015-05-11 12 views
5

Przed przesłaniem testowych przypadków chcę się upewnić, że działają stabilnie. Czy w Android Studio jest jakiś sposób na uruchomienie tej samej pętli testowej/klasy przez kilka razy?Android Studio - uruchom kilka przypadków testowych kilka razy w pętli

+0

Nie sądzę, że IJ to popiera. Jeśli nie chcesz dotykać swojego kodu testowego, możesz to zrobić, ustawiając -e; dla i in {1..20}; do ./gradlew connectedAndroidTest; done'. –

Odpowiedz

-1

Po prostu użyj cyklu FOR. Na przykład:

@Test // test loop 
    public void openApp() { 
     int x; 
     for(x=1; x < 3; x++) { 
      PageObject open = new PageObject(driver); 
      waitUntilElmntToBeClckbl(open.sqlApp); 
      open.sqlApp.click(); 
      driver.navigate().back; 
} 
+0

To nie jest poprawne! Przed każdym testem należy wykonać niektóre ustawienia/config. Z twoją sugestią, zostanie ona wykonana tylko raz, a następnie test zostanie uruchomiony. Po drugie, gdy test się nie powiedzie, zostanie zakończony. To nie będzie działało dłużej z powodu kolejnych iteracji. Po trzecie, ma to na celu sprawdzenie stabilności przebiegu testowego i musi być wykonane na rzeczywistym kodzie testowym, który ma zostać przesłany. – user846316

+0

Nie podałeś tych informacji w swoim pytaniu ... – Konstantin

0

Zastosowanie parameterized testów JUnit z kilkoma instancjami pustego parametru zestawu:

@RunWith(Parameterized.class) 
public class RepeatedTest { 

    private static final int NUM_REPEATS = 10; 

    @Parameterized.Parameters() 
    public static Collection<Object[]> data() { 
     Collection<Object[]> out = new ArrayList<>(); 
     for (int i = 0; i < NUM_REPEATS; i++) { 
      out.add(new Object[0]); 
     } 
     return out; 
    } 

    @Test 
    public void unstableTest() { 
     // your test code here 
    } 
} 

parametrycznego klasa Test uruchamia wszystkie swoje metody testowe raz dla każdego elementu w sposobie oznaczonym @Parameters adnotacji . Zazwyczaj używa się go do uruchomienia testu o różnych wartościach początkowych, ale jeśli nie ma żadnych wartości do ustawienia, test jest po prostu powtarzany tyle razy, ile chcesz.

Test zostanie zaliczony tylko wtedy, gdy przejdą wszystkie wystąpienia.