Dobre praktyki

Kilka dobrych praktyk w automatyzacji testów funkcjonalnych

Hej 🙂

Często zdarza się, że podczas pisania testów automatycznych napotykamy na masę problemów. Testy bywają trudne w utrzymaniu, a pisanie ich jest czasochłonne. Dlatego dzisiaj kilka słów o dobrych praktykach w automatyzacji testów, które pomogą uniknąć wielu problemów:

  1. Testy niezależne od siebie – Test nie powinien zależeć od zmian wprowadzonych przez inny test. W przeciwnym wypadku gdy test się nie powiedzie, to kolejne zależne od niego również się nie powiodą. Niezależność pozwala na uruchamianie różnych testów równolegle (np. gdy chcemy odpalać testy na różnych urządzeniach – ma to szczególne znaczenie w przypadku aplikacji mobilnych).
  2. Lokalizowanie elementów po id lub po dedykowanym atrybucie – Lokalizowanie elementów po najmniej zmiennych atrybutach i takich, które jednoznacznie określają ten element. Dobrą, sprawdzoną praktyką jest dodanie dedykowanego atrybutu pod testy. Dzięki temu programiści wiedzą, że dany atrybut służy tylko do testów i nie będą go ruszać.
  3. Używanie sprawdzonych wzorców – Page object pattern – Jest to wzorzec który zakłada, że każda strona / ekran aplikacji jest osobnym obiektem. Ułatwia to nawigowanie i wykonywanie akcji na poszczególnych stronach. Ponadto redukuje duplikację kodu, sprawia, że testy są czytelne i łatwe w utrzymaniu.
  4. Odpalanie testów wyzwalane zmianami w kodzie – Odpalanie testów po stworzeniu merge  / pull requesta. Dzięki temu wiadomo czy nowy kod nadaje się do mergowania.

Jeśli znacie jakieś inne dobre praktyki dotyczące automatyzacji testów aplikacji webowych czy mobilnych to koniecznie napiszcie w komentarzu :).

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google

Komentujesz korzystając z konta Google. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s