Uwielbiam pisać testy jednostkowe i zgadzam się, że są one doskonałym sposobem na testowanie kodu, zapobieganie regresjom itp. Jednak nie jestem w stanie napisać ich zbyt wiele, ponieważ ogromna większość kodu, nad którym pracuję na co dzień i na co dzień, to aplikacja kod wyświetlający interfejs użytkownika dla użytkownika. Czy istnieje dobry sposób na testowanie kodu aplikacji? Jakie są tutaj najlepsze praktyki?
Nie szukam konkretnej odpowiedzi, takiej jak ramy itp. Ale ogólnie, jak podejdziesz do tego problemu?
unit-testing
applications
Justin Ethier
źródło
źródło
Odpowiedzi:
Aby przetestować rzeczywisty interfejs użytkownika, Selenium działa dobrze.
Jeśli chcesz rzeczywistych testów jednostkowych, twoja strategia polega na wypchnięciu jak największej logiki z rzeczywistego interfejsu użytkownika, zwykle w obiekcie ViewModel. Następnie możesz napisać testy jednostkowe dla obiektu ViewModel.
Innymi słowy, umieść jak najmniej logiki w faktycznym interfejsie użytkownika, aby testy jednostkowe mogły odbywać się gdzie indziej.
źródło
Miałem sukces w testowaniu jednostkowym mojej aplikacji za pomocą MSTest i testowaniu Javascript za pomocą QUnit i zbieraniu wyników tych testów za pomocą pojedynczego testu MSTest używającego WatiN (zasugerowano mi Selenium , który ma również możliwość rejestrowania testów, ale okazało się, że WatiN jest lepszy do automatyzacji).
źródło