Dlaczego tester powinien uczyć się programowania?
Rola testera może się znacznie różnić w zależności od firmy. Czasem osoba na takim stanowisku pracuje w oddzielnym dziale testerów, a czasem przynależy do działu programistów. Co więcej, obowiązki testera manualnego znacznie różnią się od tego, co robi tester automatyzujący. Zdarza się, że ten drugi tak naprawdę już w ogóle nie testuje, skupiając się głównie na rozwijaniu frameworka służącego do przeprowadzenia testów automatycznych. Mimo tak różnorodnego zakresu obowiązków, umiejętność programowania może przydać się każdemu testerowi. Pomaga ona nie tylko w automatyzacji testów, ale pozwala także generować dane testowe czy też pisać skrypty, przygotowujące gotowe środowisko do testów.
Języki programowania i technologie przydatne w pracy testera
Które języki programowania i technologie są najbardziej przydatne w pracy testera oprogramowania? Oto zestawienie najpopularniejszych z nich, występujących w wymaganiach w ofertach pracy dla testerów na No Fluff Jobs - branżowym portalu z ofertami pracy w branży IT.
Java - najpopularniejszy i jeden z najbardziej dochodowych języków programowania. Działa na maszynie wirtualnej Javy – JVM. W tym roku wydano najnowszą wersję - 10. Występuje w 26% ogłoszeń w kategorii Testing na portalu No Fluff Jobs.
JavaScript - na drugim miejscu znalazł się najpopularniejszy język frontendowy, który przydaje się m.in. do pisania testów w narzędziu Protractor. Na jego wysoką pozycję w tym zestawieniu przyczynił się bez wątpienia wzrost popularności aplikacji webowych.
Python - język, który zawdzięcza swoją nazwę serialowi “Latający Cyrk Monty Pythona” znalazł się na 3 miejscu naszej listy. Popularny przede wszystkim dzięki szerokiemu zastosowaniu. Nadaje się do automatyzacji praktycznie wszystkich aplikacji. Można go użyć zarówno w programowaniu obiektowym, jak i strukturalnym oraz funkcjonalnym. Posiada bardzo dużo gotowych modułów, z których korzysta ogromna społeczność skupiona wokół tego języka.
SQL - kolejny w zestawieniu jest język do obsługi zapytań dla baz danych, który dzięki popularności i szerokiemu zastosowaniu relacyjnych baz danych, bardzo przydaje się zarówno w przypadku testów manualnych, jak i automatyzujących. Jego liczne rozszerzenia, takie jak chociażby T-SQL umożliwiają pisanie procedur, będących ważnym narzędziem w pracy doświadczonego specjalisty.
.NET - popularna, ściśle powiązana z internetem platforma stworzona przez firmę Microsoft, zamyka pierwszą piątkę najczęściej wymaganych technologii w pracy testera. Nie jest związana z konkretnym językiem programowania, a programy mogą być pisane w jednym z wielu wybranych języków, takich jak C++, C# czy F#. Służy do zarządzania elementami systemu, takimi jak kod aplikacji, pamięć czy zabezpieczenia.
Shell/Bash - Bash to najpopularniejsza powłoka Shella, która jest niezwykle istotna w pracy testera oprogramowania. Jej znajomość przyda się m.in. do czytania logów, przetwarzania protokołów, używania wyrażeń regularnych czy też monitorowania różnych procesów.
C++ - język ogólnego zastosowania, będący obiektowym rozszerzeniem języka C. Jest to język niskopoziomowy, który umożliwia pisanie kodu zorientowanego obiektowo. Jest bardzo popularny, czego dowodem jest fakt, że w oparciu o niego stworzono m.in. sklep Amazon czy też systemy operacyjne Windows.
Groovy - język z platformy JVM, na której opiera się także Java. Znajduje zastosowanie głównie z pomocą narzędzia SoapUI oraz dzięki rosnącej popularności frameworka Spock.
PHP - uważany za jeden z najłatwiejszych języków programowania, często polecany początkującym specjalistom IT. Jest to język skryptowy, służący m.in. do tworzenia systemów zarządzania treścią, forów dyskusyjnych czy aplikacji pocztowych. Korzystają z niego marki takie jak Facebook, WhatsApp, WordPress czy Wikipedia.
C - ostatnie miejsce w rankingu No Fluff Jobs zajął strukturalny język C. Jest to jeden z najstarszych, a do tego znajdujących najszersze zastosowanie języków programowania. Jego obecność w tym zestawieniu pokazuje, że w Polsce tworzy się nie tylko aplikacje webowe, co daje nam szansę do rozwoju także w innych obszarach.
Znajomość języków programowania jest bardzo pomocna w pracy testerów, czego potwierdzeniem są wymagania stawiane w ogłoszeniach publikowanych przez pracodawców IT na No Fluff Jobs. Jeśli zastanawiasz się nad rozpoczęciem nauki którejś z technologii i zależy Ci, by skupić się na tym, co obecnie jest najbardziej popularne - przygotowane powyżej zestawienie z pewnością pozwoli Ci dokonać właściwej decyzji.
___
Wpis został stworzony na podstawie artykułu autorstwa Artura Zwolińskiego, opublikowanego na blogu No Fluff Jobs: https://nofluffjobs.com/blog/jezyki-programowania-w-pracy-testera-porownanie-wynikow-z-2017-i-2018-roku/
Artykuł sponsorowany