• Home
  • Blog
  • Jak utrzymujemy jakość akademii za pomocą wizualnych testów regresji?

Jak utrzymujemy jakość akademii za pomocą wizualnych testów regresji?

Zmiany w jednym komponencie mogą mieć niepożądane skutki w innych. Wizualne testy regresyjne pozwalają nam poradzić sobie z tym problemem, zanim trafi on do naszych użytkowników końcowych. .

Data publikacji:
17 gru 2019
Czas czytania:
4 Min.
Autor:
Knowly

Ostatnio wprowadziliśmy nasz nowy interfejs akademii. Podczas prac nad nim zaczęliśmy korzystać z nowych technik, które pomogły nam usprawnić przepływ pracy i utrzymać wysoki standard jakości naszego produktu. Zapobiegamy występowaniu błędów, pracując w sposób oparty na komponentach i często testując niezamierzone zmiany wizualne (regresje wizualne).

Rozwój oparty na komponentach

W ostatnich latach dużym trendem w rozwoju interfejsów użytkownika jest rozwój oparty na komponentach (CDD). Komponenty to najmniejsze elementy samodzielnej funkcjonalności, które same w sobie stanowią wartość dodaną. CDD zakotwicza się w tym, tworząc proces kompilacji, który działa od dołu do góry. Najpierw tworzysz małe komponenty, które łączą się z większymi komponentami, które razem tworzą funkcję lub stronę. Pomyśl o tym jak o rowerze składającym się z mniejszych części. Zaczynasz od stworzenia dwóch kół, a następnie ramy. Dodaj kierownicę, pedały i łańcuch. Teraz zaczyna to wyglądać jak rower. W ten sposób opracowaliśmy również interfejs akademii.

Doświadczamy wielu korzyści z pracy w sposób oparty na komponentach:

  • Komponenty są wielokrotnego użytku. Jeśli zbudujesz koło, możesz użyć go do zbudowania większego lub mniejszego roweru, a może nawet trójkołowca.

  • Małe komponenty są łatwe do zrozumienia.

  • Komponenty są łatwe do przetestowania. Możesz przetestować, czy koło działa, nie musisz się jeszcze martwić o cały rower.

  • Praca z komponentami często przyspiesza nasz proces rozwoju, zapewniając rozwiązania typu plug and play.

  • Rozwój jest skoncentrowany. Łatwo jest śledzić warianty komponentów.

  • Dostępne są narzędzia pozwalające łatwo śledzić wszystkie dostępne komponenty, które zostały stworzone przez współpracowników.

  • Skorzystanie z komponentów jest bardzo proste.

Niektóre przykłady komponentów, które stworzyliśmy to: przycisk, wyskakujące okienko, odpowiedź wielokrotnego wyboru, a także kompletna strona logowania.

Storybook pozwala nam rozwijać komponenty poza naszą aplikacją w odizolowanym środowisku, nie martwiąc się o zależności lub zepsucie aplikacji.

Historia naszego interfejsu w Storybook

Po utworzeniu wielu komponentów, które są podstawą naszego interfejsu, organizujemy je w Storybook. Storybook to eksplorator komponentów lub biblioteka komponentów. Jest to skuteczny sposób na śledzenie wszystkich naszych komponentów. Każdy komponent otrzymuje własną historię w Storybook, gdzie można przeglądać wszystkie możliwe warianty komponentu: 

Button component in Storybook

Na przykład w przypadku komponentu przycisku możliwe jest wyświetlenie przycisku domyślnego, podniesionego, niepodniesionego i wyłączonego. Możliwa jest również interakcja z komponentem, aby zobaczyć, jak zmienia się jego stan lub zachowanie. Można na przykład wpisać coś w formularzu logowania, a pola wejściowe poinformują, czy wprowadzone dane są prawidłowe:

Login form component in Storybook

Storybook pozwala nam rozwijać komponenty poza naszą aplikacją w odizolowanym środowisku, nie martwiąc się o zależności lub zepsucie aplikacji.

Używamy Storybooka jako narzędzia do projektowania, ponieważ przyjęliśmy strategię projektowania opartą na historii. Kiedy projektujemy, bezpośrednio tworzymy coś, co jest wartościowe. Zamiast tworzyć marnotrawstwo w Photoshopie, jak to robiliśmy wcześniej. Kiedy dodajemy historie komponentów do Storybook, automatycznie współtworzymy żywy przewodnik po stylach lub bibliotekę interfejsu użytkownika. Oznacza to, że deweloper może łatwo wybierać z szerokiej gamy gotowych komponentów, aby dodać je do tworzonej funkcji. Dzięki temu nasz interfejs jest spójny i stosunkowo tani w rozwoju:

Login page component in Storybook

Za pomocą dodatków rozszerzyliśmy Storybook, abyśmy mogli przetestować dostępność każdego komponentu. Upewniając się, że interfejs pozostaje dostępny dla użytkowników z pewnymi ograniczeniami:

Accessibility checking in Storybook

Wizualne testy regresji przy użyciu Percy

Wcześniej mówiliśmy o regresjach wizualnych, które są niezamierzonymi zmianami wizualnymi. Aby uświadomić sobie te zmiany wizualne, używamy narzędzia o nazwie  Percy. Percy to narzędzie do testowania regresji wizualnej, które dba tylko o integralność wizualną.

Dzięki Storybook mogę budować i stylizować komponenty w izolacji i zawsze mam wgląd w różne scenariusze, które zaprojektowałem. Z pomocą Percy'ego zawsze wiem, jaki wpływ mają wprowadzane przeze mnie zmiany.
Anouk
Front-End Developer & UX Designer

>

Dla każdego komponentu, który opracowaliśmy w naszej bibliotece komponentów Storybook, tworzony jest zrzut ekranu. Kiedy zmieniamy komponent, tworzony jest nowy zrzut ekranu, a oba są porównywane obok siebie. Różnice są następnie zaznaczane na czerwono, aby wyraźnie pokazać, co się zmieniło:

Regressions made visible in Percy

Differences between the old and new version are marked in red

Percy łączy się bezpośrednio z naszym potokiem ciągłej integracji (przepływ od pomysłu do rzeczywistości), powiadamiając nas o wizualnych regresjach przed wprowadzeniem zmian. Po sprawdzeniu przez jednego z projektantów, zmiany są akceptowane lub odrzucane. Percy pozwala również na dyskusję na temat danej zmiany:

Percy integrated into our pipeline telling us something needs review

Wszystko to pomaga nam powstrzymać niechciane zmiany wizualne przed dotarciem do Ciebie, naszych użytkowników końcowych. Czy mimo to zdarzyło się, że prześlizgnął się jakiś błąd wizualny? Czytaj dalej, aby dowiedzieć się, jak sobie z tym radzimy w tym artykule

Przeczytaj więcej wpisów na naszym blogu

Caroline

Caroline

12 gru 2024

Wyjaśnienie naszych dodatkowych korzyści związanych z zatrudnieniem

Wynagrodzenie ma duże znaczenie przy wyborze pracy, ale nie zapominajmy o dodatkach, które się z nim wiążą. Dodatkowe korzyści mogą naprawdę osłodzić umowę! Wierzymy, że przygotowaliśmy fantastyczny pakiet. Zapoznaj się z naszymi wspaniałymi dodatkami!

Czytaj dalej
Caroline

Caroline

8 kwi 2025

Praca i rozwój!

Praca w Easy LMS daje satysfakcję! Oczywiście zapewniamy konkurencyjne wynagrodzenie, dodatek na dojazdy i pracę z domu oraz 25 płatnych dni urlopu rocznie! Ale jesteśmy również dumni, że możemy zaoferować ci benefity, które pomogą ci poczuć swój pełen potencjałi dawać z siebie wszystko. Twoje dobre samopoczucie, zarówno fizyczne, jak i psychiczne, jest naszym najwyższym priorytetem! Nasi pracownicy stanowią kręgosłup naszej organizacji.

Czytaj dalej
Caroline

Caroline

22 kwi 2025

Pierwszy miesiąc

Kiedy masz nową pracę, z niecierpliwością czekasz na jej rozpoczęcie! Jednocześnie zawsze towarzyszy temu zdrowa dawka nerwów. Co cię czeka? Jak będą wyglądały pierwsze tygodnie? I jak szybko możesz naprawdę wnieść wartość dodaną? Skupiamy się na tym ostatnim. Nasz przejrzysty program wdrożeniowy dla inżynierów oprogramowania pomoże Ci poznać naszą firmę, współpracowników i zadania w mgnieniu oka! Przekonaj się, jak zapewnimy Ci dobry start!

Czytaj dalej