2014-04-07 15 views
6

Chcielibyśmy zintegrować pakiet testów w naszej aplikacji na iOS. Aby mieć ogólny pomysł, ta aplikacja korzysta z usług internetowych, zapisuje pliki na urządzeniu i ma pewne skomplikowane części nawigacyjne. Wymagania: - uruchomić zestaw testów z Jenkins - będąc w stanie uruchomić zestaw testów na zestaw urządzeń i iOS wersji - nie mamy wyraźnie trzeba coś czytelnego przez niezarejestrowanych deweloperów jak Tykwa proponujeWybór frameworków testowania iOS

Byliśmy myślenie o przeprowadzeniu testów przepływu pracy (interakcja z jednego ekranu na drugi) i testowaniu jednostkowym. Przeszukiwaliśmy trochę, ale artykuły często mają co najmniej 2 lata, co przypomina okres paleolitu w mobilnym świecie. Ale nadal daje kilka fajnych pierwszych danych wejściowych.

dla jednostki badań, myśleliśmy o:

  • GHUnit
  • XCTest
  • Kiwi

Do testowania workflow, myśleliśmy o:

  • cukinia
  • Kalabasa

Co do wszystkich wspomnianych wymagań, czy ktoś widzi jakąkolwiek radę, aby wybrać jedną ramę lub drugą (lub inną propozycję)?

Dziękujemy za wszelkie uwagi.

ps: przy okazji, kilka ciekawych artykułów Znaleźliśmy na ten temat, które mogą pomóc: http://blog.lesspainful.com/2012/03/07/Calabash-iOS/ http://iosunittesting.com/faq/

+1

Prawdopodobny duplikat https://stackoverflow.com/questions/4114083/ios-tests-specs-tdd-bdd-andintegration-acceptance-testing –

+0

Ten drugi wpis pomaga, ale na pewno znowu jest starym postem w komórce świat. Nie wspomina nawet o Calabash do testowania przepływu pracy aplikacji. Co więcej, każdy projekt ma szczególne wymagania i nie wszystkie ramy są mile widziane. Dlatego szukamy porad dotyczących naszych wymagań. – Toka

+0

Najnowsze dyskusje na temat tego stanu testowania interfejsu użytkownika i wszystkich narzędzi można znaleźć w tej rozmowie na youtube z [MCE 2014: Drew Crawford - testowanie interfejsu użytkownika jest do bani] (http://www.youtube.com/watch?v = h1TRkDSmnOc). –

Odpowiedz

2

Polecam Kiwi dla testów jednostkowych z kilku powodów:

  • Wspiera zagnieżdżone konteksty, w których każdy może mieć własne ustawienia i zablokowane bloki. Dzięki temu twoje testy będą bardziej suche. XCTest ma tylko jedną metodę instalacji i usuwania, która jest używana do wszystkich testów w pliku. W przypadku kontekstów zagnieżdżonych Kiwi możesz mieć kod instalacyjny, który jest wykonywany przed niektórymi, ale nie wszystkimi testami w oparciu o sposób definiowania kontekstów.
  • Kiwi ma świetne wsparcie dla kpiących/zależnych zależności w razie potrzeby. Zauważyłem, że jest on bardziej odporny niż OCMock (wyśmiewane metody klasowe z OCMockiem utknęły po teście, jeśli zapomniałeś zadzwonić -stopMocking, podczas gdy Kiwi zawsze upewnia się, że doszło do wyśmiewania się z metod klasy po każdym teście).

Nie mam doświadczenia w przepływie pracy/testowaniu aplikacji, ale planuję w końcu sprawdzić KIF i UIAutomation.

Gorąco polecam przejrzenie iOS Tests/Specs TDD/BDD and Integration & Acceptance Testing, aby uzyskać bardziej wyczerpującą dyskusję na temat bibliotek testujących.

Powiązane problemy