*Текстът е предоставен от DataArt
Автор: Александър Петров, Senior QA инженер в DataArt
Алекс е експерт с над 5 години опит в областта на Quality Assurance, а от 2022 г. насам е част от екипа на глобалната софтуерна компания DataArt. На 19 февруари той ще бъде лектор в QA потребителската група на DEV.BG, където ще разкаже повече за възможностите на Postman и приложението му при API тестването. Повече за събитието можете да научите ТУК.
В динамично развиващите се процеси в областта на осигуряване на качеството, QA специалистите се сблъскват с нарастващо търсене на по-задълбочено и надеждно API тестване.
Самият аз работя в сферата на QA от повече от 5 години и напоследък все повече се изправям пред предизвикателството да открия устойчиви и функционални методи за API тестване.
Ето защо в тази статия ще разгледам възможностите на Postman и ползата от интеграцията му в работния процес чрез използването на неговите разширени функции за прецизно тестване на API.
Предимствата на API тестването от личен опит
В началото на кариерата си се занимавах основно с Manual тестване на UI компоненти, без това да включва backend-а, което само по себе си ограничаваше възможността да разбера как работи системата в нейната цялост и да се впусна в по-задълбочено тестване.
За да използваме различни тулчета (Testfully, PAW, Insomnia и т.н.), трябва да имаме достъп до API и да сме запознати какво се очаква като вход или изход. По този начин можем да разберем как работи системата, която тестваме, а за един QA това е от ключово значение.
Честно казано, Postman ми позволи да извършвам редица нови тестове, които направиха работата по-интересна и в един момент investigation-а на бъгове стана доста по-задълбочен. Описанието на бъгове вече съдържаше и компоненти (MS,UI, cashe, DB и т.н) в зависимост от източника на проблема, а това спестява въпросите от страна на разработчиците и улеснява комуникацията с тях.
Като QA специалисти в същността ни е да бъдем перфекционисти, но, няма как да направим 100% тестване, но пък можем да се придържаме към принципа “work smart, not hard”.
В досегашния си професионален опит съм се нагледал на доста различни начини на работа, но за съжаление, в малка част от тях присъства API тестване от QA. Причините вероятно са различни и варират от компания до компания, но според мен API тестването трябва да е част от АБВ-то на един QA. То не само подобрява резултатите от тестването, но и вече почти навсякъде е включено като technical requirement.
Еволюцията на API тестването
API се превърнаха в гръбнака на съвременните приложения, допринасяйки за по-добрата комуникация между различни софтуерни компоненти. С нарастването на значението на API се увеличава и сложността на тестването на тези различни micro service-си. Manual QA тестерите, които имат задачата да проверяват потребителските интерфейси, сега се оказват в челните редици на API тестването, което налага преминаване към инструменти, които да могат да рационализират и подобрят този ключов процес.
Възможностите на Postman при manual тестването
Postman, известен със своята мощ в разработването и тестването на API, разширява потенциала си отвъд сферата на автоматизацията и разработчиците. Екипите, занимаващи се с manual QA могат да използват техническите възможности на Postman и определено биха мобли да повишат уменията си за тестване на API. Ето някои примери как може да стане това:
1. Създаване на динамична заявка за API:
Postman предоставя цялостна среда за създаване на сложни API заявки. Manual тестерите могат да използват неговия интерфейс, за да създават заявки за различни HTTP методи, включващи параметри, headers и payloads, без да прибягват до сложно писане на код.
2. Управление на променливи за динамични данни
QA специалистите често се сблъскват със сценарии, при които динамичните данни са абсолютно наложителни за задълбочено тестване. Променливата система на Postman дава важно предимство в това отношение като ви позволява да параметризирате своите заявки и да извършвате систематично тестване на идентични функционалности с различни набори от данни.
3. Визуализация и анализ на отговора
И тук Postman може да бъде доста полезен. Визуално интуитивният му интерфейс представя отговорите на API в лесно смилаем формат. Можете целесъобразно да проверявате отговорите, като потвърждавате целостта на данните и се уверите, че приложението се придържа към предварително зададени спецификации.
4. Управление на конфигурацията на средата
QA тестовите среди по своята същност варират, което налага прецизно управление на конфигурацията. Environment функцията на Postman позволява безпроблемно да превключвате между отделни конфигурации, като разработка, тестване и производство. Това, от своя страна, увеличава адаптивността в процедурите за ръчно тестване.
5. Скриптове за разширени валидации
Противно на общоприетите схващания, Postman позволява на QA екипите да използват потенциала на JavaScript скриптовете за индивидуални проверки. Тази опция дава възможност да се разширят сценариите за тестване отвъд конвенционалните верификации на отговорите, като по този начин се повишава дълбочината и обхвата на тестовете.
6. Сътрудничество и синхронизация на екипа
Освен чисто техническите предимства, Postman има и още един съществен плюс, свързан с работата в самия екип. Той служи като своеобразна връзка между QA специалистите и разработчиците. Споделените колекции и среди улесняват комуникацията и създават единен подход за тестване, намалявайки риска от пропуски в комуникацията и осигурявайки последователност в методологиите за тестване.
7. Тестване, основано на документация
Друга полезна функция на Postman е, че може да бъде ползван за извършване на стриктно валидиране на документацията на API. Чрез създаване на заявки въз основа на предоставената документация, можете доста прецизно да установите точността и пълнотата на документацията, като гарантирате съответствие с текущата функционалност на API.
Казано иначе…
Postman е един изключително полезен инструмент, който предоставя на manual QA специалистите цялостен инструментариум, пригоден за разширено API тестване. И определено си заслужава да се запознаете в дълбочина с него, тъй като той не само увеличава възможностите за тестване, но и активно допринася за ефективността и успеха на жизнения цикъл на разработката.
С бурното развитие на технологиите и особено с навлизането на изкуствения интелект, пред QA спеиалистите стои необходимостта да бъдат все по-конкурентни и прецизни. Ето защо приемането на инструменти като Postman на практика става наложително. Техническата мощ на Postman дава съвсем нови възможности на manual QA тестването и му позволява да запази своята ключова роля в осигуряването на качеството и функционалността на приложенията, управлявани от API.