SDET, také známý jako Software Development Engineer in Test, je pracovní rolí v doméně testování softwaru a zajištění kvality. Termín původně používal Microsoft a poté Google s cílem nahradit pozemské a opakované ruční testovací úlohy automatizací.
V průběhu let stále více společností najímá SDET, protože to je klíčová role v Agile a DevOps. Je to však náročná role.
Technologie se mění velmi rychle a testeři se musí hodně naučit, aby si udrželi náskok.
V mém předchozím příspěvku Testování ve světě DevOps „Vysvětlil jsem, jak se role testeru v posledním desetiletí změnila, čímž vznikl nedostatek testovat jednorožce .
Tento příspěvek hovoří o roli SDET a proč je obtížné najít SDET jednorožec.
SDET je technický softwarový tester se zaměřením na vývoj automatizovaných testovacích skriptů.
Obvykle jsou součástí agilního týmu a spolupracují s vývojáři, aby pomohli automatizovat kritéria přijetí v příbězích uživatelů.
Kromě účasti na typických činnostech QA mohou psát cokoli z automatizovaných integračních testů, testů API a / nebo automatizačních testů uživatelského rozhraní.
Kromě toho by SDET mohly pomoci zkontrolovat testy jednotek napsané vývojáři.
V každém produktu jsou některé základní funkce, které musí fungovat při každém vydání produktu. To znamená, že v každém sprintu musí být testovány nové funkce a stávající funkce.
Agilní vývoj je rychlý. S krátkými sprinty, které jsou obvykle 2 týdny dlouhé, nemají testeři čas otestovat vše ručně.
Pokud testeři v týmu nemají potřebné dovednosti k psaní automatických kontrol, musí být všechny testy provedeny ručně.
Nakonec se testování stává překážkou vývoje a vydání softwaru, protože jeho dokončení bude trvat stále déle.
Najímání a umisťování SDET do agilního týmu proto může zmírnit zátěž automatizací většiny manuálních testů a úkolů.
Proč je tedy tak těžké najít a získat dobré SDET?
V průběhu let většina takzvaných SDET, s nimiž jsem vedla pohovor, buď postrádá požadované technické dovednosti, nebo nerozumí principům QA a testování.
Nerozumí plně hlavnímu důvodu role SDET v týmu. Většina z nich narazila na předpoklad, že vše, co musí udělat, je automatizovat kritéria přijetí. Řekněme jasně, SDET NENÍ automatizační technik .
Klíčem je mít správnou rovnováhu mezi testováním schopností a technických dovedností.
Skvělý SDET je obchodním testerem softwaru, je vášnivý kvalitě softwaru a současně je technicky zdatný a má správnou kombinaci technických dovedností.
Při pohovoru pro SDET vždy hledám Myšlení QA a Technické dovednosti.
Jak vypadá profil skvělého SDET? Jaké dovednosti by měly mít SDET?
Někteří z nás nyní slyšeli o vývojářích s plným zásobníkem, ale můžeme full-stack testery ?
Podle mého názoru by měl mít SDET alespoň následující dovednosti a atributy:
Jak je vidět, škála dovedností očekávaných od SDET je poměrně široká.
Moje rada testerům, kteří se chtějí stát SDET a zůstat relevantní v novém věku QA, je:
Ujistěte se, že pracujete na získání všech výše uvedených dovedností v profilu SDET_, ale minimálně: _
Nejdůležitější je znát základy testování softwaru.
Je až příliš dobré být na stejné úrovni s vývojáři a umět psát krásný kód. Pokud vám však chybí myšlení QA, pokud nemůžete přijít s dostatečným počtem scénářů k důkladnému testování uživatelských příběhů a funkcí, nepřidáváte žádnou hodnotu. Můžete také tvrději pracovat a stát se vývojářem.
Většina moderních webových aplikací interaguje s API.
Je nezbytné znát a rozumět architektuře HTTP a tomu, jak funguje web. Pokud nemůžete rozlišit mezi požadavkem POST a požadavkem GET nebo nevíte, jak na to analyzovat JSON , jak tedy můžete efektivně otestovat API?
Investujte čas do učení testovacích nástrojů API, jako je Karate .
Nemůžete se nazývat SDET, pokud vše, co chcete udělat, je automatizovat testy a vše, co víte, je Java, Selenium a Cucumber!