how translate manual test cases into automation scripts
Това ще бъде основната статия 'как да' и не е специфичен за инструмент за автоматизация. По принцип това, което се опитвам да направя тук, е да сложа мисловния процес, който влиза в създаването на тест за автоматизация, с думи. Както винаги, надявам се това да е полезно за всички вас.
Как да проектирам тестов случай или сценарий за автоматизация?
Автоматизацията винаги следва ръчно тестване. Обикновено един или повече кръга на ръчно тестване вече ще бъдат извършени на AUT. Това означава, че ръчните тестови случаи вече съществуват и са изпълнени поне веднъж.
Например, приемете, че следното е вашето Ръчно тестово дело . Това е просто влизане в сайта на Gmail.com. Това изглежда достатъчно просто, нали? Как става това скрипт за автоматизация? (кликнете върху изображението, за да го увеличите)
Какво ще научите:
Как да преведа този ръчен тестов случай в скрипт за автоматизация?
Следват насоките, които ще следваме, за да постигнем превода в скрипт за автоматизация:
# 1) Състояние на AUT: Предварителното условие на колоната не е нищо друго освен определено състояние на фона, което трябва да бъде зададено за дадена стъпка, която трябва да бъде изпълнена. Това е особено важно при два сценария:
- За да започнете теста: В този случай се нуждаем от наличен и стартиран браузър. (Наличността на потребителското име и паролата ще бъде разгледана след малко). Сега, как да напишем едно и също нещо в света на автоматизацията? Помислете за QTP. Имате опция или да стартирате браузъра, използвайки програмни изявления, или можете да използвате диалоговия прозорец „запис и стартиране“, за да зададете свойствата. Правилната настройка на тези свойства е много важна. Често това е причината, поради която определена част от кода ще работи в машина, а няма да работи в останалите.
- За да изпълните определена стъпка : За да бъде извършена стъпка 2, трябва да завършим и завършим стъпка 1. За да направите това ръчно, можем просто да изчакаме, докато изпълнението на стъпката приключи и страницата се зареди напълно. Използвайте синхронизирането или изчакайте изявления във вашия скрипт за автоматизация, за да изчакате, докато желаното състояние се сбъдне.
Забележка: Когато изпълнявате един и същ код за множество набори от данни, бихте искали да се уверите, че връщате AUT в състоянието, което трябва да бъде преди следващото стартиране на итерация.
# 2) Тестови стъпки
Можем да категоризираме ръчните тестови стъпки в 3 категории:
- Въвеждане на данни : Стъпките за въвеждане на данни са мястото, където въвеждате някаква информация като вход към вашия AUT.
- Промяна на стъпките на състоянието AUT : тези стъпки са тези, които ще доведат до промяна на вашия AUT. Това може да включва отваряне на нова страница, видимост на определено поле, редактиране на поле за редактиране и т.н.
- Комбинация : както подсказва името, това е комбинацията от двата горни типа. Вземете случая на квадратче за отметка, когато е включено, ще активира определено поле. В този случай въвеждате стойността „True“ за полето за отметка и това също води до състояние на вашия AUT.
В горния тестов случай съществуват само стъпки от тип 1 и 2.
- Тип 1: тестови стъпки 2 и 3
- Тип 2: Тестови стъпки 1 и 4
Задължителното условие за създаване на скрипт за автоматизация с помощта на който и да е инструмент е да отделите известно време за анализ на инструмента, както и AUT. Опитайте се да видите как и двамата си взаимодействат помежду си. Например, QTP има 3 начина за запис и всеки работи по различен начин.
Ако знаете как идентифицира обектите, ще знаете кой да използвате и да ги използвате по-добре. Ако имате уеб приложение, където QTP може лесно да идентифицира обектите, можете да използвате нормалния режим. Ако не, може да се наложи да използвате аналоговите или ниско ниво методи.
Стъпки за автоматизация:
- Стъпки за въвеждане на данни не се различават много в автоматизацията и ръчните методи. Всичко, което правите, е да въведете данните. Начинът, по който препращате полето, е различен. Тъй като това ще бъде машината, изпълняваща стъпките, просто трябва да се уверим, че се позоваваме на полетата в AUT по начин, който инструментът разбира. Това означава, че трябва да използвате логическото му име, както се използва в кода.
- За промяна на стъпки AUT / Комбинация в ръчен сценарий вие изпълнявате действието (щракване или проверка или въвеждане) и потвърждавате промяната едновременно. Но в сценарий за автоматизация това не е възможно. Затова трябва да сме сигурни, че добавяме стъпки за действие и валидиране / проверка.
- Коментари за четливост.
- Изявления за отстраняване на грешки - те са особено важни, при които създавате и тествате самия тест. Опитайте се често да използвате кутии за съобщения, за да извеждате различни стойности на различни етапи от изпълнението на теста. Това ще ви даде видимост в теста, както нищо друго.
- Изходни отчети - да се пишете в резултатите или на всяко друго външно място като бележник или Excel лист.
# 3) Проверка и валидиране
Без проверка и валидиране целта на тестването се губи. Обикновено ще трябва да използвате контролна точка (не означава непременно вградените). Така че ще трябва да използвате много условни оператори, а също и циклични оператори, за да изградите логиката.
Важно нещо, което трябва да имате предвид, е, че атрибутът, въз основа на който базирате V&V, не трябва да бъде двусмислен. Например, за успешно влизане потърсете дисплея на страницата с входящи съобщения, а не броя на новите имейли, защото това не е постоянна стойност.
Така че трябва да изберете нещо, което е вярно всеки път, когато се случи набор от операции - непременно.
# 4) Тестови данни
как да отворите двоични файлове в Windows
По-долу са някои от въпросите, на които може да помислите да отговорите за вашите изисквания за тестови данни:
- Къде да го поставите?
- Да хардкодирате или не?
- Проблеми със сигурността?
- Проблеми с повторната употреба?
Когато погледнете назад към скрипта за ръчно тестване, ще забележите, че наличието на тестови данни, потребителското име и паролата са едно от предварителните условия дори да започнете теста.
# 5) Резултати
За случай на ръчен тест можете да поставите резултата от всяка стъпка в колоната „Действителен резултат“. Файлът с резултати на инструмент за автоматизация съдържа резултата от всяка стъпка при изпълнение.
Понастоящем инструментите за автоматизация имат много стабилни функции за отчитане. Все пак може да се наложи да приспособите Резултати от тестовете . Затова включете стъпките за често писане във файла с резултати, за да знаете точно какво се е случило, докато се е изпълнявало.
Ако инструментът, който използвате, не поддържа записване в генерирания от него файл с резултати, добре е да имате поне лист или бележник, свързан с всеки тест, за да добавяте коментари за състоянието на изпълнение, докато вървите.
# 6) Пощенски операции
След като приключите с тестването, не е необходимо изрично да се споменава във вашия ръчен тестов случай, за да затворите браузъра или да затворите AUT и т.н. Като тестер, вие ще го правите усърдно. В случая на тестовия случай на автоматизация можете да включите тези стъпки във вашия скрипт. Почистване - това, което аз наричам тези дейности. Убийте всички връзки, които сте създали. Затворете всички приложения. Освободете паметта.
Използвайки тези насоки, аз превеждам нашия ръчен тестов случай в QTP тестов скрипт, който използва VB скриптове. Резултатът е следният: (щракнете върху изображението, за да го увеличите)
Разходка през всяка стъпка
Етап 1: Предпоставка. Стартираме IE с URL адрес на Gmail.com програмно.
Стъпка 2 и 7: Изявление за синхронизиране. Както обсъдихме по-горе, те са важни, за да се уверим, че AUT идва в желаното състояние, преди да последва изпълнението на следващата стъпка.
Стъпка 3 и 4: Въвеждане на данни. Всички данни са кодирани твърдо в скрипта. Въпреки че не е препоръчително, това е начало.
Стъпка 5: Промяна на стъпка AUT. Стъпка 5 включва кликване върху бутона Вход. Няма да имате нужда от V&V, когато това изявление бъде изпълнено. Това е така, защото има последващо изявление и ако това може да се изпълни; това означава този преди да е бил успешен. Но ако сте изключително старателни, можете да включите такъв тук.
Стъпка 6 и 8: Коментари
Стъпка 9 и 11: Условна декларация. V & V / Checkpoint. Опитваме се да видим дали влизането е било успешно, като проверяваме дали на получената страница има връзка към входящата поща. Ако отбелязвате внимателно, търси се връзка с вътрешен текст, „inbox. *“. Така че независимо от броя на получените нови имейли (които са променливи), ако имате налична връзка към входящата поща (която винаги е константа), това означава преминат контролен пункт.
Стъпка 10: Кутия за съобщения. За видимост
Стъпка 12 и 13: Това са дейностите по почистване. Излизате от акаунта и затваряте браузъра.
Заключение
И така, виждате колко лесно се разгръща скрипт за автоматизация, когато имате добре написан ръчен скрипт и набор от основни насоки, които да следвате. Тъй като това не е статия относно рамки , Останах настрана от функциите, факторите за повторна употреба, параметризацията и т.н. Тестовият скрипт е основният градивен елемент, лесно е да се импровизира върху скрипт, когато имате основите правилно.
Има ли други фактори, които имате предвид, друг метод, който намирате за по-лесен, или някакви насоки, които ви е трудно да следвате? Моля, уведомете ме в коментарите.
Тази публикация е написана от члена на екипа на STH Swati Seela. Тя има повече от 9 години опит в ръчно и автоматизирано тестване на работа с различни MNC. Тя е и нашият инструктор за Курс за обучение по софтуерно тестване . Ако се интересувате от този курс, за да проверите предстоящ партиден график тук .
Препоръчително четене
- Процес на автоматизирано тестване от 10 стъпки: Как да започнете тестване на автоматизация във вашата организация
- Защо ни е необходима рамка за тестова автоматизация?
- Предизвикателства при ръчно тестване и автоматизация
- Как се различава планирането на тестове за ръчни проекти и проекти за автоматизация?
- Как да реша кой тип тестване е необходим за даден проект? - Ръчна или автоматизация
- Какво е тестване за автоматизация (Ultimate Guide to Start Test Automation)
- QTP Frameworks - Тестови рамки за автоматизация - Примери, управлявани от ключови думи и линейна рамка - QTP урок # 17
- Топ 10 стратегии за автоматизация на тестовете и най-добри практики