2011-08-08 11 views
6

Wygląda na to, że mam wszystko dobrze ustawione. Po uruchomieniu polecenia-u (lub wyboru produktu - testu z menu) test działa poprawnie.Jak uruchomić testy logiczne OCUnit automatycznie przed każdą kompilacją (uruchomieniem) aplikacji ios w Xcode 4?

Najlepsze praktyki powinny polegać na tym, że test powinien przebiegać tak często, jak to możliwe, najlepiej podczas każdej kompilacji (zrozumieć podczas każdego uruchomienia).

Jak wymusić XCode 4, aby to zrobić? Próbowałem:

  • uzależnienia docelowej konfiguracji (umieścić główny cel aplikacji będzie zależna od celu badania)
  • enable „test po kompilacji” w głównych ustawieniach kompilacji aplikacji docelowych
  • kleszcz również cel badanie w schemacie edytor głównego schematu aplikacji:

ale nic nie działa. Czy ktoś ma powodzenie konfigurowania tego?

+0

Czy konieczne jest uruchomienie testów jednostkowych przed każdą kompilacją? Jeśli ustawisz opcję Buduj kompilację po kompilacji na Tak i wybierz opcję Produkt> Zbuduj> Twórz dla testowania, Xcode tworzy projekt i uruchamia testy. –

+0

tak. Ale to jest to samo, co mam teraz - zawsze, gdy naciskasz polecenie-u i testy są uruchamiane. Ale nudzę się, żeby często to naciskać. I często zapominam. A czasem zdarza się, że muszę zagłębić się w kod i znaleźć błąd. Które można było natychmiast złapać, gdybym przeprowadzał testy z każdą kompilacją. I to także najlepsza praktyka - uruchamiaj test automatycznie podczas każdej kompilacji ("kompilacja" mam na myśli za każdym razem, gdy chcę uruchomić aplikację) –

Odpowiedz

10

końcu zorientowaliśmy się, choć nadal nie jest doskonały:

  1. Na cel testu upewnij ustaw „test po kompilacji” yes.
  2. Na głównym schemacie aplikacji - kompilacja - w polu "Uruchom" zaznacz również pakiet testowy.

To powoduje, że twój cel testowy jest tworzony podczas uruchamiania aplikacji. Dzięki "Testowi po kompilacji" uruchamiane są również testy. Jeśli wszystko jest w porządku, aplikacja uruchamia się na zasadzie symulacji. Jeśli wystąpią jakiekolwiek testy zakończone niepowodzeniem, nastąpi awaria, jeśli użyjesz STAssert. W przypadku OCMock, możesz sprawdzić, co dokładnie poszło nie tak w inspektorze logu.

Czasami punkty przerwania nie działają. Aby je uruchomić, spróbuj produktu - wykonaj akcję - sprawdź bez budowania.

Powiązane problemy