Najciekawsze momenty społeczności: Ramona Schwering

Ramona Schwering jest inżynierem oprogramowania i ekspertem ds. programistów Google z doświadczeniem w zakresie zapewniania jakości.

W tym poście omawiamy serię postów na blogu Automatyzacja testów, w których przedstawiamy eksperta ze społeczności.

Ramona Schwering.

Ramona Schwering jest inżynierem oprogramowania z doświadczeniem w zakresie zapewniania jakości. Jest też ekspertką Google Developers w dziedzinie technologii internetowych. Ramona uwielbia automatyzację testów. Jej udział w testowaniu automatyzacji obejmuje m.in. przemawianie na konferencjach, publikowanie artykułów, udział w projektach open source i organizowanie spotkań.

Ramona Schwering w VueJS w Amsterdamie.

Jecelyn: Jak wyglądała droga do tworzenia i testowania stron internetowych?

Ramona: Moja droga do rozwoju zaczęła się od zamiłowania do sztuki. W szkole średniej dużo czasu rysowałam i tworzyłam ilustracje, które chciałam publikować. Chciałam jednak użyć czegoś innego niż DeviantArt i Animexx, więc stworzyłam własną stronę. W ten sposób dowiedziałam się więcej o tworzeniu stron internetowych. Później w czasie swojej pierwszej pracy zainteresowałam się testowaniem automatyzacji. Chciałam wyeliminować żmudne zadania testowe, aby móc skupić się na zadaniach wymagających ludzkiej kreatywności i doświadczenia.

Jecelyn: Jest wiele narzędzi do automatyzacji testów. Jak można poznać je wszystkie lub wybrać, które wybrać?

Ramona: To świetne pytanie. Zacznijmy od początku: chociaż dobrze jest wypróbować wiele różnych schematów automatyzacji, nie czujesz się zobowiązani do poznawania każdego z nich. Zacznij od tworzenia małych projektów lub napisz pierwszy krótki test, aby sprawdzić, czy podoba Ci się sposób korzystania z platformy. Możesz wybrać jedną lub dwie, które odpowiadają Twoim potrzebom i są zgodne z Twoimi preferencjami. Wolę wybrać rozwiązanie, sprawdzając, czy podoba mi się sposób działania danej platformy. Próbuję sprawdzić, czy nie ma problemów z korzystaniem z tej funkcji. Pamiętaj, że testowanie powinno być nawykiem, a nie zabieraniem udziału w dyskusji. Zależy to oczywiście od konkretnego projektu i związanych z nim wymagań.

Joanna: testowanie jest często opóźnione do samego końca, np. „Nie mamy jeszcze na to czasu”. Co o tym myślisz?

Ramona: pisanie testów wymaga czasu, zwłaszcza jeśli zdecydujesz się na tworzenie testów opartych na testach. Chyba jednak powszechne jest błędne przekonanie, że testowanie pochłania DUŻO czasu. Uznałbym to za inwestycję, która ma wiele zalet: otrzymujemy opinie na wczesnym etapie, dzięki czemu można wcześniej naprawić błędy, co przekłada się na niższe koszty ich naprawiania, ponieważ błędy nie kumulują się i ich naprawianie nie będzie droższe na późniejszym etapie. Poza tym im bardziej zautomatyzujesz proces, tym mniej musisz przeprowadzać ręczne testy, ale nadal masz pełny obraz stanu projektu. Moim zdaniem jest wręcz przeciwnie – testy pozwalają zaoszczędzić czas i nabrać pewności siebie bez ciągłego wysiłku.

Joanna: Opowiedz mi o kulturze automatyzacji testów w Twojej firmie.

Ramona: w moim obecnym zespole testowanie jest uznawane za wspólną odpowiedzialność – wszyscy są właścicielami tego zespołu. Wdrożyliśmy proces o nazwie „Jakość z szybkością”, który został pierwotnie wdrożony przez firmę Atlassian. Dzięki temu testerzy działają tylko jako siatka bezpieczeństwa, decydując, czy żądanie pull wymaga testowania. Dlatego deweloperzy nie mogą polegać na przekonaniu, że to tester zajmie się wszystkim. Zamiast tego deweloperzy i testerzy współpracują z inżynierami jakości, którzy pełnią funkcję trenerów i uczą programistów, jak testować aplikacje. Programiści piszą testy niezbędne do wprowadzenia zmian, a inżynierowie ds. jakości uznają, że jest to konieczne. Później będą je uzupełniać. Takie podejście zwiększyło empatię między deweloperami i inżynierami jakości oraz umożliwiło im współpracę i dzielenie się odpowiedzialnością.

Jecelyn: angażujesz się w wiele działań społecznościowych, takich jak mówienie, pisanie czy udzielanie się na rzecz open source. Jak znaleźć czas i równowagę?

Ramona: Cieszę się, że pracodawca wspiera moje wystąpienia, dzięki czemu nie muszę robić dni w pracy, gdy uczestnicząc w konferencjach lub przygotowuję treści do prelekcji. Muszę jednak przyznać, że nadal wykorzystuję swój wolny czas na naukę publiczną. Aby efektywnie zarządzać czasem, wdrożę strategię blokowania czasu, w której poświęcam np. 2 godziny dziennie na np. pomaganie w projektach open source, pisanie artykułów czy ćwiczenia z prezentacji. Po tych 2 godzinach ważne jest, aby zrobić sobie przerwę, aby mieć wystarczająco dużo czasu na odpoczynek. Chociaż czasami ta metoda nie działa zgodnie z planem, zazwyczaj pomaga mi zachować równowagę między pracą, zaangażowaniem w społeczność i życiem osobistym, nie zaniedbując ważnych zadań.

Jecelyn: Czy jest coś, co chciałbyś wiedzieć przed rozpoczęciem pracy z automatyzacją testów?

Ramona: nie należy nadmiernie angażować się w konkretne rozwiązanie i traktować go priorytetowo niż rozwiązywać rzeczywiste problemy. Naszym głównym celem jest zapewnienie użytkownikom jak najlepszej jakości usług i zapewnianie im jak najlepszych wrażeń, a każda platforma może nam w tym pomóc. Dlatego lepiej nie brać udziału w wojnach ramowych. Na samym początku kariery w zakresie testowania zalecam, aby zacząć od nauki podstaw testowania i automatyzacji testów oraz używać platform jako narzędzi, gdy jest to konieczne.

Jecelyn: W jaki sposób udaje Ci się nadążać za automatyzacją testów i tworzeniem stron internetowych?

Ramona: lubię być na bieżąco z najnowszymi trendami i innowacyjnymi pomysłami, monitorując źródła wiadomości i media społecznościowe. Odfiltrowywanie istotnych informacji może być jednak trudne, dlatego staram się korzystać z wiarygodnych źródeł i osób. Konsoliduję też źródła za pomocą takich funkcji jak listy i zakładki na Twitterze. Oto jedno z listy obserwowanych źródeł. Uczestnictwo w konferencjach i spotkaniach to kolejny sposób, w jaki mogę być na bieżąco. Mogę uczyć się z prezentacji i rozmawiać z innymi uczestnikami.