SDET, известен също като Инженер за разработка на софтуер в теста, е работна роля в домейна за тестване на софтуер и осигуряване на качеството. Терминът първоначално е бил използван от Microsoft, а след това и от Google с оглед да замени ежедневните и повтарящи се задачи за ръчно тестване с автоматизация.
През годините все повече компании наемат SDET, тъй като това е ключова роля в Agile и DevOps. Това е предизвикателна роля, която трябва да се изпълни.
Технологиите се променят много бързо и тестерите трябва да научат много, за да изпреварят играта.
В предишния ми пост, Тестване в свят на DevOps , Обясних как ролята на тестера се е променила през последното десетилетие, поради което създава недостиг на тествайте еднорози .
Тази публикация говори за ролята на SDET и защо SDET за еднорог е трудно да се намери.
SDET е технически тестер за софтуер с фокус върху разработването на автоматизирани тестови скриптове.
Обикновено те са част от пъргав екип и работят заедно с разработчиците, за да помогнат за автоматизирането на критериите за приемане в историите на потребителите.
Освен че участват в типични QA дейности, те могат да напишат всичко от автоматизирани тестове за интеграция, API тестове и / или тестове за автоматизация на потребителския интерфейс.
В допълнение, SDET могат да помогнат за преглед на модулни тестове, написани от разработчиците.
Във всеки продукт има някои основни характеристики, които трябва да функционират при всяко издаване на продукта. Това означава, че във всеки спринт трябва да се тестват нови функции плюс съществуваща функционалност.
Пъргавото развитие е забързано. С кратки спринтове, които обикновено са с продължителност 2 седмици, тестерите нямат време да тестват всичко ръчно.
Когато тестерите в екип нямат необходимите умения за писане на автоматизирани чекове, всички тестове трябва да се извършват ръчно.
В крайна сметка тестването се превръща в пречка за разработването и пускането на софтуер, защото ще отнеме повече и повече време.
Следователно наемането и поставянето на SDET в гъвкав екип може да облекчи тежестта, като автоматизира голяма част от ръчните тестове и задачи.
И така, защо е толкова трудно да се намерят и наемат добри SDET?
През годините по-голямата част от така наречените SDET, които съм интервюирал, или нямат необходимите технически умения, или нямат разбиране на QA и принципите на тестване.
Те не разбират напълно основната причина за ролята на SDET в екип. Повечето се сблъскват с предположението, че всичко, което трябва да направят, е да автоматизират критериите за приемане. Нека бъдем ясни, SDET НЕ е инженер по автоматизация .
Наличието на правилния баланс на тестване на способности и технически умения е ключовото нещо.
Страхотният SDET е софтуерен тестер за търговия, който е запален по качеството на софтуера и в същото време е технически разбиращ и притежава правилната комбинация от технически умения.
Когато интервюирам за SDET, винаги търся QA Mindset и Технически умения.
Как изглежда профилът на страхотен SDET? Какви умения трябва да имат SDET?
Сега някои от нас са чували за разработчици с пълен стек, но можем ли да го направим тестери с пълен стек ?
Според мен SDET трябва да има поне следните умения и атрибути:
Както може да се види, диапазонът от умения, очаквани от SDET, е доста широк.
Моят съвет към тестерите, които искат да станат SDET и да останат актуални в новата ера на QA, е:
Уверете се, че работите за притежаването на всички горепосочени умения в профила SDET_, но като минимум: _
Първо и най-важно, познавайте основите на тестването на софтуера.
Твърде добре е да бъдете наравно с разработчиците и да можете да пишете красив код. Но ако ви липсва мисленето за QA, ако не можете да измислите достатъчно сценарии, за да тествате подробно потребителски истории и функции, тогава не добавяте никаква стойност. Можете също така да работите по-усилено и да станете разработчик.
Повечето съвременни уеб приложения взаимодействат с API.
Важно е да знаете и разберете HTTP архитектурата и как работи мрежата. Ако не можете да разграничите POST заявка от GET заявка или не знаете как анализирайте JSON , тогава как можете ефективно да тествате API?
Инвестирайте време в изучаване на инструменти за тестване на API, като например Карате .
Не можете да се наречете SDET, ако всичко, което искате да направите, е да автоматизирате тестове и всичко, което знаете, е Java, селен и краставица!