how choose best automation testing tool
В този урок сме обхванали критериите за избор на инструменти за автоматизация на тестовете и контролния списък с матрица за сравнение на инструменти за автоматизация на тестовете за ваше лесно справяне.
Ръководството от А до Я за избора на най-добрия инструмент за автоматизация за вашия проект:
Това е 4тиурок в нашата поредица от уроци за автоматизация на тестове. Моля, проверете всички статии, публикувани в тази поредица на тази страница: => Крайното ръководство за стартиране на тестове за автоматизация на вашия проект
Изборът на инструмент за автоматизация на тестове е една от най-важните стъпки преди стартиране на автоматизацията във всяка организация.
Важно е, защото инструментът ще повлияе значително на всички ваши усилия за автоматизация. Ако инструментът е добър и ви предоставя необходимите функции, автоматизацията става по-лесна и ефективна.
Има много критерии, които трябва да се вземат предвид при избора на инструмента за автоматизация. Някои от тях съм обсъждал в една от предишните си статии. Тук изброих най-важните аспекти, които трябва да имате предвид при избора на инструмент за автоматизация на теста.
Какво ще научите:
- Решение за вас ли е автоматизираното тестване?
- Кога има смисъл автоматизацията на тестовете?
- Как да изберете инструмент за автоматизация за вашия проект?
- Критерии за оценка на инструмента за автоматизация на тестовете
- Критерии за избор на инструмент за автоматизация на теста и контролен списък
- Въпрос №1: Какъв е бюджетът на вашата организация за инструмент за автоматизация?
- Въпрос # 2: Каква е действителната цена на инструмента?
- Въпрос №3: Поддържа ли инструментът операционната система / браузъра или устройството, в което се изпълнява вашето приложение?
- Въпрос №4: Поддържа ли инструментът технологиите и контролите на трети страни, използвани във вашето приложение?
- Въпрос №5: Колко езика поддържа инструментът? Имате ли квалифицирани ресурси за тези езици?
- Въпрос №6: Поддържа ли инструментът свързване към различни източници на данни?
- Въпрос # 7: Как е механизмът за докладване на инструмента за автоматизация?
- Въпрос №8: Може ли инструментът да бъде интегриран с хранилища за тестови случаи и управление на грешки?
- Въпрос # 9: Как е официалната техническа поддръжка на инструмента?
- Въпрос № 10: Някои технически аспекти, които трябва да видите
- Заключение
- Препоръчително четене
Решение за вас ли е автоматизираното тестване?
Работил съм по много проекти в кариерата си. Когато работите по един и същ проект повече от една година, силно започвате да изпитвате нужда от автоматизиране на някои задачи. Започвате да мислите да въведете тестване за автоматизация на проекта, ако досега не е било разглеждано от ръководството на проекта.
Една година е достатъчно време, за да може всеки да знае тънкостите на всеки проект. Веднъж знаете подробно функционалността на проекта става по-лесно да решите кои повтарящи се задачи трябва да бъдат автоматизирани.
Някои тестерите също се отегчават правите едни и същи повтарящи се задачи отново и отново и те започват силно да изпитват нужда от автоматизация на теста.
Означава ли това, че трябва веднага да преминете към тестване за автоматизация?
Определено не!
Има много критерии, по които трябва да работите, преди да решите дали автоматизацията е решение за вас .
Кога има смисъл автоматизацията на тестовете?
- Когато има много повтарящи се тестове
- Когато има чести итерации на тестове за регресия
- Когато трябва симулират голям брой потребители които използват ресурсите на приложението
- Когато AUT има сравнително стабилен потребителски интерфейс
- Когато имате голям набор от BVT случаи
- Когато не можете да разчитате само на ръчно изпълнение на тест за критична функционалност
Допълнителна информация:
- Кога трябва да отидете за автоматизация?
- Съветите, които прочетете, трябва да стартирате автоматичното тестване
След като разберете, че е подходящият момент да инвестирате времето и парите си в добър инструмент за автоматизация, можете да започнете да търсите най-добрия инструмент за автоматизация, който отговаря на вашите нужди.
Как да изберете инструмент за автоматизация за вашия проект?
Успехът на автоматизираното тестване до голяма степен зависи от избора на правилните инструменти за тестване. Отнема много време за оценка на съответните инструменти за автоматизация, налични на пазара. Но това е задължително еднократно упражнение, което ще бъде от полза за вашия проект в дългосрочен план.
Имаше малко ситуации, в които имах възможност да прегледам и избера инструмент за автоматизация за моите проекти. Задачата беше трудна, тъй като трябваше да се справим с нуждите си от тестване и ограниченията на разходите, но си заслужаваше опит.
Ето критериите, които трябва да имате предвид, преди да изберете какъвто и да е инструмент за тестване:
Критерии за оценка на инструмента за автоматизация на тестовете
1) Имате ли необходимия квалифициран ресурс, който да отделите за задачи по автоматизация?
две) Какъв е вашият бюджет?
3) Инструментът удовлетворява ли вашите нужди от тестване? Подходящ ли е за средата на проекта и технологията, която използвате? Поддържа ли всички инструменти и обекти, използвани в кода? Понякога може да закъсате за малки тестове поради неспособност на инструмента да идентифицира обектите, използвани в приложението.
Считам горните три фактора за най-важни за избора на който и да е инструмент.
4) Инструментът предоставя ли ви безплатната пробна версия, така че да можете да я оцените, преди да вземете решение? Освен това инструментът има ли всички функции, налични в пробната версия?
5) Стабилна ли е текущата версия на инструмента? Създадена ли е фирмата доставчик с добра поддръжка на клиенти, както и онлайн помощни ресурси и ръководство за потребителя?
6) Как е кривата на обучение на инструмента? Приемливо ли е времето за обучение за вашите цели?
7) Искате ли инструмент за автоматизация само за нуждите на вашия проект или търсите общ инструмент за всички проекти във вашата компания? Би било добър избор, ако изберете инструмент, който поддържа повечето езици за кодиране на вашите проекти.
c ++ срещу Java разлики
8) Кои видове тестване поддържа? Инструмент, който поддържа максимални типове тестове (единица, функционалност, регресия и т.н.), винаги е по-добър избор.Внимание- Не избирайте инструмент само защото той поддържа всички видове тестване. Също така е важно инструментът да е достатъчно мощен, за да автоматизира сложните ви изисквания.
9) Поддържа ли инструментът лесен интерфейс за създаване и поддържане на тестови скриптове? Инструментът за запис и възпроизвеждане с възможности за редактиране на записани скриптове може да бъде добро решение.
10) Предоставя ли опростен интерфейс, но мощни функции за изпълнение на сложни задачи?
единадесет) Колко лесно е да се предоставят входни данни за тестове за сложни или натоварващи тестове? Инструмент, поддържащ въвеждането на тестови данни от различни файлове с данни като Excel, XML, текстов файл и т.н., би бил голямо облекчение за автоматизацията на тестерите.
12) Предоставя ли мощното отчитане с графичен интерфейс? Ясните и кратки отчети винаги ще ви помогнат да приключите бързо резултатите от теста.
13) Интегрира ли се добре с другите ви инструменти за тестване като планиране на проекти и инструменти за управление на тестове ?
Може да помислите и за други критерии като:
14) Политика за възстановяване на доставчик на инструменти
петнадесет) Съществуващи отзиви на клиентите за инструмента
16) Осигурява ли доставчикът първоначално обучение?
Съвети: Събирането на изисквания е най-важната стъпка за избор на правилния инструмент. Не забравяйте да категоризирате вашите изисквания в категориите must have, приятно да имате и не задължителни. Това ще ви помогне бързо да оцените инструмента. Не забравяйте, че няма да намерите инструмент, който вече се предлага на пазара, който да поддържа всички ваши нужди от автоматизация!
Най-добрите инструменти за автоматизация :
въпроси за интервю за работа на анализатор за осигуряване на качеството
HP QTP / UFT и селен са двете най-популярни опции за функционално тестване, налични в момента. QTP / UFT е най-добрият инструмент за функционално тестване, поддържан от широк спектър от кодиращи езици и платформи, докато Selenium е най-добрият инструмент за функционално уеб тестване с отворен код.
Прочетете тази статия за списъка с ТОП инструменти:
Топ 20 най-добри инструменти за тестване на автоматизация през 2020 г. (изчерпателен списък)
В следващата статия ще обсъдим предизвикателства при ръчно тестване и автоматизация .
Критерии за избор на инструмент за автоматизация на теста и контролен списък
10 въпроса, които трябва да зададете, преди да изберете най-добрия инструмент за тестване на автоматизация
Задавайте следните въпроси, когато сте в ситуация, за да изберете инструмента за автоматизация за вашата организация:
Въпрос 1: Какъв е бюджетът на вашата организация за инструмент за автоматизация?
Според мен това е най-важното нещо, което трябва да се вземе предвид при избора на инструмента за автоматизация.
Защо да търсите QTP / UFT и проучете това, когато не можете да закупите лиценза? QTP инструментът струва около $ 8000 (приблизително). Ако вашата организация може да закупи лиценза и вие сте потвърдени, трябва да изтеглите пробната версия и да направите пивотен проект за автоматизация върху нея, за да тествате нейната функция. В противен случай не трябва да отделяте време за проучване върху него. (Говоря за този сценарий, ако искате да използвате QTP за проект на компанията на живо. Ако го изтегляте само с учебна цел, тогава е добре да изтеглите пробната версия.)
Въпрос №2: Каква е действителната цена на инструмента?
Следва цената на инструмента за автоматизация. Има не само цена на лиценза, но и цената на добавките (ако е необходимо), таксата за поддръжка, таксата за обучение и таксата за надстройка.
Нека първо да поговорим за лиценза.
а) Видове лицензи:
Има следните видове лицензи.
1) Потребителски лиценз със заключен възел.
Заключеният за възел потребителски лиценз ще поддържа инструмент за автоматизация на теста, който да се използва на един физически компютър във вашата фирмена мрежа. Можете да стартирате наведнъж само един екземпляр на инструмента на лицензирания компютър. Този лиценз обикновено е обвързан с името на хоста на машината.
2) Едновременен плаващ потребителски лиценз
Плаващ потребителски лиценз може да се споделя между различни машини, но може да се използва само от една машина наведнъж. Той не е обвързан с името на машината или нещо друго, вместо това използва мениджър на лицензи (инсталиран на сървър), за да управлява един и същ лиценз на различни машини.
По принцип, с лиценза Node-Locked, нямате свободата да инсталирате инструмента на една машина, да го деинсталирате и след това да го инсталирате отново на която и да е друга машина. Но с плаващ потребителски лиценз имате право да правите това.
3) Лиценз за време за изпълнение
Гореспоменатите два вида лицензи обикновено се купуват, за да „разработят“ скриптовете. Това са лицензи за разработка. За да изпълнявате скриптовете на различни машини, трябва да имате лиценз за „изпълнение“ или „изпълнение“ за всяка машина.
Пример:
Например, ако изпитателят трябва да разработи и изпълни тестови случаи на една и съща машина, тогава е достатъчен един лиценз за разработка.
Но ако трябва да разработи на една машина и да изпълни тестовите случаи на три различни виртуални или физически машини, той трябва да купи един лиценз за „разработка“ и три лиценза за изпълнение.
Някои доставчици предлагат безплатни лицензи за изпълнение (като кодиран потребителски интерфейс), а други предлагат цена (като Test Complete, Ranorex и др.). Така че всичко зависи от продавача до продавача.
4) Лиценз с отворен код
Изборът на вашата компания е да изберете търговски инструмент и да платите цена или да изберете инструмент с отворен код.
Търговските инструменти са скъпи, но предлагат чудесна поддръжка и са лесни за използване с много предоставени учебни материали. Търговските инструменти обикновено са „един инструмент за всички нужди“. Инструментите с отворен код са безплатни, но обикновено са по-трудни за научаване. Официалната подкрепа е малка, но можете да намерите решения, като посетите различни форуми. Решенията с отворен код обикновено са за специфични нужди.
б) Такса за поддръжка, надстройка и обучение:
За подкрепа, обучение и такса за надстройка може да се наложи да се обадите на представителя на компанията. Някои компании предлагат специални отстъпки при масово закупуване на лицензи, така че понякога тази информация не се споменава ясно в уебсайтовете. Ще получите информация само чрез обаждане или имейли.
Въпрос # 3: Поддържа ли инструментът операционната система / браузъра или устройството, в което се изпълнява вашето приложение?
Този въпрос обикновено зависи от типа приложение, което използвате.
а) Ако е базиран на настолен компютър:
Ако работите върху настолно приложение, трябва да очертаете това колко операционни системи искате да тествате това приложение. Работих върху настолно приложение и исках да го тествам на Windows 7 и Windows 8.1. Затова избрах кодиран потребителски интерфейс, защото поддържа и двете.
б) Ако е базиран на браузър
Ако работите върху уеб приложение, трябва да очертаете това колко браузъри искате да тествате това приложение. Исках да изпълня тестовите си случаи на FireFox, Chrome и IE. Избрах селен за моето уеб приложение, защото той поддържа всички тези браузъри. Уверете се, че избраният от вас инструмент трябва да поддържа както по-стари, така и по-нови версии на вашите необходими браузъри.
в) Ако е базиран на мобилни устройства
Ако работите върху мобилни приложения, трябва да знаете, на кои мобилни операционни системи трябва да стартирате тестовите си случаи. Ако вашето приложение работи както на Android, така и на IOS, вашият инструмент трябва да поддържа това. Selenium има отделни драйвери за стартиране на скриптове на Android, IOS, Windows Phone и BlackBerry. Можете също да използвате отделен инструмент за всяка от мобилните операционни системи. Има Robotium за Android, Appium както за IOS, така и за Android, както и CodedUI за Windows телефонни приложения.
Отново се стига до дебата за отворен код срещу реклама. Както можете да видите, има отделни отворени кодове инструменти за тестване на уеб базирани , мобилни и настолни приложения. Но ако изберете търговски инструмент като Test Complete, Ranorex или Test Studio, те могат да тестват и трите типа (мобилни, настолни и браузърни приложения). Така че в случай на търговски инструмент, трябва да научите само един инструмент за тестване на уеб, настолни и мобилни приложения.
Въпрос # 4: Поддържа ли инструментът технологиите и контролите на трети страни, използвани във вашето приложение?
Това е много важен аспект при избора на инструмента. Трябва да знаете от първа ръка, какви технологии се използват във вашето приложение. Консултирайте се с разработчиците си и ги запишете. Ако те използват HTML 5 или SilverLight в уеб приложения, внимавайте, няма много инструменти за автоматизация, които да ги поддържат. Ако инструментът претендира за поддръжка на тези технологии, изтеглете пробната версия на този инструмент и се опитайте да идентифицирате различни обекти във вашето приложение. Ако инструментът не успее да ги идентифицира, тогава твърдението им е невярно. Тази дейност ще ви спаси от последващата мизерия.
Матрица за сравнение на инструменти за автоматизация на тестове:
Следващата таблица сравнява различни инструменти по отношение на тяхната лицензионна цена и тяхната подкрепа за различни технологии. (Трябва да приемете тази диаграма като учебна практика за това как да създавате сравнения между различни инструменти, но точността на дадените данни не е 100%)
(Щракнете върху изображението, за да видите увеличено)
Y = Поддържа се, N = Не се поддържа, U = Неизвестно
Въпрос # 5: Колко езика поддържа инструментът? Имате ли квалифицирани ресурси за тези езици?
Изучаването на инструмента е един аспект. Изучаването на езика е друг аспект. Ако имате ресурси с опит в Java и вашият инструмент не поддържа Java, времето за изучаване на новия език ще бъде добавено към усилията ви за автоматизация.
Друг аспект е, че ако вашият продукт е изграден на Java, трябва да имате екип от разработчици, които са експерти по Java. Тези разработчици също могат да помогнат на екипа за автоматизация по отношение на езикови проблеми. Изборът на инструмент, който предлага език, който е запознат с вашите ресурси, е важен и ще ви помогне да сведете до минимум кривата на обучение за вашите ресурси.
The Селен WebDriver предлага писане на скриптове на множество езици като C #, Java, Python, Ruby и в JavaScript. TestComplete предлага и скрипт за писане на множество скриптови езици, като VBScript, JScript, DelphiScript, C ++ Script и C # Script.
Въпрос # 6: Поддържа ли инструментът свързване към различни източници на данни?
Ако използваме рамка за автоматизация като управлявана от ключови думи или данни, трябва да имаме възможността да свържем нашия инструмент с всеки източник на данни. Ако инструментът осигурява лесно свързаност с различни източници на данни, това ще бъде много полезно.
Вижте поддръжката за често срещани източници на данни, като CSV файл, Excel файл, XML файл и база данни. Ако те присъстват в даден инструмент, добре е да започнете.
Въпрос # 7: Как е механизмът за отчитане на инструмента за автоматизация?
Когато изпълним скрипта, той ще премине или ще се провали. В случай на пропуск не е необходима много информация, с изключение на информация за продължителността и околната среда. Но в случай на неуспех, ние се нуждаем от изчерпателен доклад за неуспеха. Отчетът трябва да ни каже, че точно на коя стъпка скриптът се проваля. Снимка на момента на повредата ще бъде допълнително предимство.
Освен това този доклад трябва да бъде експортиран в различни формати, за да можем да го споделим със заинтересованите страни. В много инструменти тези опции са вградени, а в някои инструменти има начини да направите своя отчет изчерпателен. Това е друго нещо, което трябва да внимавате, когато изтегляте пробната версия на инструмента. Ако дава изчерпателни отчети за неуспехи, най-добре е за организацията.
Въпрос # 8: Може ли инструментът да бъде интегриран с хранилища за тестови случаи и управление на грешки?
Има голяма вероятност вашата организация вече да използва някакъв тест или инструмент за управление на грешки . Фирмите очевидно искат техният автоматизиран инструмент да бъде интегриран със съществуващия им инструмент за управление на тестови случаи, така че целият им жизнен цикъл на приложението да се управлява правилно. Този аспект трябва да се види и при избора на инструмент за автоматизация на теста.
QTP поддържа QLM, кодиран потребителски интерфейс поддържа TFS и TestComplete поддържа QAComplete. Някои инструменти с отворен код също имат поддръжка за интегриране със съществуващите инструменти за управление на тестове с отворен код. Всичко зависи от това, което всъщност използва вашата организация.
Въпрос # 9: Как е официалната техническа поддръжка за инструмента?
Тук говорим само за търговски инструменти. Когато изберете търговски инструмент, аспектът им за поддръжка е много важен. Вижте учебния материал, предоставен на уебсайта. Уебсайтът съдържа ли видеоклипове и уроци? Уебсайтът има ли официален форум за задаване на въпроси? Изтеглете пробната версия и заснемете въпрос на техния форум и вижте колко дни ще получите отговор. Осигуряват ли поддръжка за обаждане?
Горните въпроси наистина трябва да се задават всеки път, защото харчите добра сума пари за инструмента. Ако инструментът няма добра поддръжка, не се притеснявайте да го купите.
Въпрос # 10: Някои технически аспекти, които да видите
Има и някои други технически аспекти, които трябва да се видят, като например:
а) Поддръжка на запис и възпроизвеждане
Това не е препоръчителен подход при тестовата автоматизация, но е добре да имате инструмент. Той опростява процеса на обучение на инструмента и помага за лесното автоматизиране на лесни сценарии.
б) Различни методи за разпознаване на обекти и поддръжка на картографиране на обекти
Трябва да има разнообразие от избор на един и същ обект с различни методи. Някои обекти са трудни за разпознаване. Така че разнообразието от методи за подбор винаги е полезно.Например, селенът поддържа избор на обекти по id, име, клас, тест за връзка, XPATH , CSS селектор и JavaScript. Ето урок за - как QTP идентифицира обектите уникално . Ако един метод за подбор не работи, имаме разнообразие от други методи за избор, които винаги са полезни.
По същия начин трябва да има опция за правилно картографиране на тези обекти в хранилището на обекти. Това хранилище трябва лесно да се актуализира и управлява. Само да ви напомня, че Selenium няма вградена поддръжка за картографиране на обекти.
в) Различни контролни точки или поддръжка на твърдения.
Тестовият случай е предаден или неуспешен въз основа на контролни точки или твърдения. Ако инструментът има различни методи за проверка на очакваните резултати, това е от полза. QTP има различни контролни точки като Стандартен , Растерно изображение , Таблица , XML, база данни и точки за проверка на съдържанието на файла.
г) Обработка на сценарии за възстановяване.
Ако тестовият случай не успее и искате да продължите изпълнението, инструментът поддържа ли го толкова лесно? Ако сценариите за възстановяване са лесни за управление в инструмент, това ще ви позволи да изпълнявате тестови случаи без никакъв бъг. Можете да стартирате тестовете през нощта и сутрин получавате резултатите, в които се посочва кои тестове са неуспешни и кои тестове са предадени. Това ще се случи само ако инструментът може лесно да управлява възстановяването от неуспешни тестови случаи. В противен случай ще се пропилява много усилия за автоматизация при работа със сценарии за възстановяване. Вижте управление на сценарии за възстановяване в QTP .
Заключение
Винаги помнете, че нито един инструмент не е добър или лош инструмент. Всичко зависи от вашите изисквания и естеството на продукта.
Селенът може да е най-популярният инструмент за автоматизация, но ако вашият продукт е базиран на десктоп, този инструмент няма полза за вас. Разберете първо продукта си и след това потърсете подходящия инструмент, който отговаря на вашите изисквания, като използвате указанията, споменати в този урок.
безплатен софтуер за защитна стена за Windows 10
Правилният избор на инструменти за автоматизация играе жизненоважна роля за успешната автоматизация.
Следващ урок - Следващият ни урок от тази поредица е за „Рамки за разработка на скриптове и автоматизация с примери“. Отново проверете всички уроци от тази поредица на тази страница .
Чувствайте се свободни да публикувате вашите запитвания / коментари по-долу за избора на правилния инструмент за автоматизация.
PREV Урок # 3 | СЛЕДВАЩ Урок # 5
Препоръчително четене
- Инструмент за тестване за автоматизация на графичния интерфейс на Sikuli - Ръководство за начинаещи, Част 2
- Алфа тестване и бета тестване (Пълно ръководство)
- Урок за Geb - Тестване за автоматизация на браузъра с помощта на Geb Tool
- Пълно ръководство за тестване за проверка на компилация (BVT тестване)
- Най-добри инструменти за тестване на софтуер 2021 г. [Инструменти за автоматизация на QA теста]
- Функционално тестване срещу нефункционално тестване
- Ръководство стъпка по стъпка за внедряване на доказателство за концепция (POC) в тестовете за автоматизация
- Процес на автоматизирано тестване от 10 стъпки: Как да започнете тестване на автоматизация във вашата организация