Słownik ISTQB w polskim tłumaczeniu podaje:
Tester – wykwalifikowany profesjonalista, zaangażowany w testowanie modułu lub systemu.
Definicję tę rozszerza Adam Roman w swojej książce "Testowanie i jakość oprogramowania" i proponuje:
Tester (ang. tester) – wykwalifikowany profesjonalista zaangażowany w testowanie modułu, systemu lub innego artefaktu procesu tworzenia oprogramowania.
Ministerstwo Rodziny, Pracy i Polityki Społecznej w ramach klasyfikacji zawodów i specjalności proponuje rozdzielenie zawodu na dwie różne definicje przypisane do branż. Pierwsza definicja to:
Tester oprogramowania komputerowego
Synteza: Tester oprogramowania komputerowego weryfikuje poprawność działania oprogramowania oraz raportuje wykryte błędy i niezgodności ze specyfikacją.
Tester oprogramowania komputerowego weryfikuje poprawność działania programów komputerowych oraz raportuje wykryte błędy i niezgodności ze specyfikacją oprogramowania. Weryfikacja poprawnego działania może odbywać się na różnych poziomach architektury oprogramowania, obejmując m.in. testy modułowe, integracyjne, testy interfejsu użytkownika, jak również testy niefunkcjonalne, np. wydajności, bezpieczeństwa czy ergonomii. Tester zajmuje się także przygotowaniem dokumentacji testowej: skryptów i scenariuszy testowych, bierze aktywny udział w rozwijaniu procesów i procedur testowania oraz weryfikuje poprawność wymagań. Praca testera oprogramowania komputerowego ma charakter indywidualny, jednak często współpracuje on z członkami zespołu tworzącego oprogramowanie oraz osobami odpowiedzialnymi za określenie wymagań dla oprogramowania. Praca testera oprogramowania komputerowego stanowi istotny element procesu tworzenia oprogramowania, decydujący o jakości finalnego produktu.
Zadania zawodowe:
- tworzenie planu testów, scenariuszy i przypadków testowych;
- wykonywanie testów funkcjonalnych;
- wykonywanie testów niefunkcjonalnych;
- wykonywanie testów strukturalnych;
- wykonywanie testów automatycznych;
- wykonywanie testów za pomocą narzędzi wspomagających testowanie;
- opracowywanie dokumentacji testowej;
- raportowanie błędów;
- organizowanie stanowiska pracy zgodnie z zasadami i przepisami BHP, ochrony ppoż., ochrony środowiska.
Tester oprogramowania powinien posiadać wykształcenie wyższe pierwszego stopnia. Zawód może być wykonywany również przez hobbystów, samouków posiadających wykształcenie średnie i wiedzę branżową z zakresu tworzonego i rozwijanego oprogramowania. Do podjęcia pracy w zawodzie testera wymagana jest biegła obsługa komputera, znajomość procesu tworzenia oprogramowania i znajomość języka angielskiego w zakresie czytania ze zrozumieniem dokumentacji technicznej. Zróżnicowane zakresy testów wyznaczają konieczność posiadania przez testera odpowiedniej wiedzy, jak np. znajomość narzędzi wspierających testowanie, języków skryptowych, baz danych czy też szczególna wiedza branżowa, której dotyczy testowane oprogramowanie.
Definicja druga to:
Tester systemów teleinformatycznych
Synteza: Odpowiada za przeprowadzenie testów funkcjonalności i wydajności systemów teleinformatycznych; zajmuje się oceną możliwości i kompatybilności poszczególnych systemów, dostosowywaniem i opracowywaniem systemów teleinformatycznych do konkretnych aplikacji.
Zadania zawodowe:
- wykonywanie testów funkcjonalności, wydajności i testów integracyjnych systemów teleinformatycznych;
- projektowanie i planowanie cykli testowych z uwzględnieniem zakresu testów;
- dokonywanie wyboru metod, standardów i narzędzi do testowania systemów teleinformatycznych;
- doskonalenie stosowanego w zakresie testów zbioru metodyk, procedur i narzędzi;
- przygotowywanie i utrzymanie środowisk testowych systemów teleinformatycznych;
- przygotowywanie scenariuszy testowych, przypadków testowych i przeprowadzanie na ich podstawie testów systemów teleinformatycznych zgodnie z założeniami scenariuszy;
- testowanie aplikacji webowych i mobilnych;
- badanie i analizowanie zachowań i reakcji systemów teleinformatycznych;
- analizowanie wyników testów systemów i przygotowywanie niezbędnej dokumentacji;
- badanie zgodności implementacji ze standardami;
- sporządzanie raportów z poszczególnych etapów prac oraz raportowanie błędów i analizowanie ich przyczyn;
- współpracowanie z analitykami, projektantami i programistami na każdym etapie przeprowadzania testów;
- utrzymywanie systemów teleinformatycznych w trakcie przeprowadzania testów.
Dodatkowe zadania zawodowe: przygotowywanie koncepcji doskonalenia systemów teleinformatycznych.
Niestety słowo "tester" w rozumieniu osoby wykonującej testy nie pojawia się w słowniku języka polskiego PWN, a w Wikipedii pojawia się tylko "tester gier" i "beta tester". Ta druga definicja bardzo nie odbiega od definicji "testera".
Beta tester – osoba, która przed wydaniem oprogramowania komputerowego testuje jego jakość, wydajność oraz stabilność na wersji beta. Pomaga producentom oprogramowania poprzez składanie raportów z testowania.
W przypadku oprogramowania Open Source beta testowanie ma zwykle charakter działalności wolontariackiej, ponieważ każda wersja programu jest dostępna dla wszystkich użytkowników, a zainteresowani mogą zgłaszać błędy w trakcie użytkowania.
W swojej książce "Zawód: Tester" Radosław Smilgin nie podaje osobnej definicji "testera", ale dostrzega pojawienie się (niekoniecznie poprawnych) nazw zastępczych.
"testerzy [...] są nazywani specjalistami ds. zapewnienia jakości, inżynierami jakości czy też QA-owcami (od ang. quality assurance – czyli zapewnianie jakości).".
Analizując popularne definicje tych zawodów widzimy, że nie mają one nic wspólnego ze standardowymi zadaniami testerów.
Podsumowując możemy zauważyć, że definicje w źródłach są różne, ale rozbieżności nie są znaczące. Definicje są w miarę spójne co do zakresu obowiązków i odpowiedzialności testera oprogramowania.
Rolę testera oprogramowania definiujemy podczas szkoleń Dobry Tester i Dobry Przypadek Testowy.
Najbliższe terminy kursów: