Створення сайтів Львів067 607 57 84
МЕНЮ

Переваги та недоліки автоматизованого тестування

В кар'єрі кожно мануального тестувальника одного разу настане момент, коли він стоятиме перед вибором: братися чи не братися за вивчення автоматизованого тестування? І, звісно, якщо ви плануєте рости та розвиватись у сфері тестування, то ваша відповідь повина бути однозначною - так.

Головна відмінність автоматизованого тестування в тому, що усі тести тепер не потрібно проводити власноруч, все відбуватиметься автоматизовано за допомогою інструментів для автоматизованого тестування. Здавалося б, про таке можна тільки мріяти, однак не все так просто і райдужно, як здається на перший погляд. Давайте розглянемо з вами основні особливості автоматизованого тестування та коротко зупинимось на тому, з чого почати його вивчення.

На сьогоднішній день у вимогах до оголошеної вакансії QA інженера все частіше можна можна побачити пункт про знання якого-небудь засобу автоматизації. Так чи інакше, автоматизація стає все більш затребуваною у нових проектах. Окрім цього, фахівці з автоматизованого тестування досить-таки затребувані на світовому та й вітчизняному IT ринках, що гарантує вам хороший прибуток та заробітню плату, прирівняну до зарплати програмістів.

Основна складність, з якою стикаються мануальні тестувальники, які вирішили перейти на автоматизацію, полягає в тому, що автоматизоване тестування — це, по суті, симбіоз програмування і тестування. Тож вивчити одну з мов програмування вам будепотрібно. Ще однією складністю для початківців виявляється те, що навчитися бачити внутрішню архітектуру, як написаних тестів, так і тестованої програми, не так то й просто.

Однак, переваг в автоматизованого тестування величезна кількість.

По-перше, із запровадженням на проекті автоматизації, ви одразу помітите, що якість тестування підвищиться. Це буде пов'язано з так званим "людським фактором", а точніше з його мінімальним впливом на процес тестування.

По-друге, у вас з'явиться можливість виконувати такі види тестування, які або зовсім неможливо виконати вручну, або ж вони вимагають значних ресурсів, наприклад, встановлення додаткового обладнання, чи залучення більшої кількості людей.

По-третє, процес тестування значно прискориться без втрат якості. Це, в першу чергу, пов'язано з тим, що написані вами скрипти можна використовувати неодноразово на даному проекті, або на подібних, що значно зекономить час на написанні скрипту з нуля. Окрім цього, практично усі вид тестів можуть відбуватись за розкладом без втручання людини, навіть в неробочий час, скажімо, на вихідних, чи вночі.

Четвертою перевагою стане той факт, що вкладені в автоматизацію проекту кошти, в довготривалій перспективі себе виправдовують.

Звичайно, у автоматизації є і недоліки. Цей процес не усуне специфічні проблеми, з якими можуть зіткнутися користувачі. Ще один недолік - обмежена кількість тестових сценаріїв. Мусимо зазначити, що головне завдання автоматизації - знайти баги в простих операціях, наприклад, вхід в додаток, створення аккаунта або відправка електронного листа, коли користувач забуває пароль. Недоліки додатку, що виявляються при специфічних обставинах, все ще повинні тестуватися вручну. Як відомо, машини мають більші можливості, але, на жаль, поки що вони не можуть думати самостійно. Крім іншого, автоматизація не дозволяє провести ефективне юзабіліті тестування дизайну, наприклад, положення кнопки, і, в цілому, наскільки зручно додаток у використанні. Для з'ясування всього цього все ще краще застосовувати ручне тестування.

Недоліки є як у автоматизованого, так і у ручного тестування. Для досягнення найкращих результатів доцільніше застосовувати комбінований варіант: автоматизація підходить для простих повторюваних дій, ручне тестування - для складних кейсів, коли шукаються специфічні баги з метою забезпечення максимально можливого досвіду взаємодії.

Тож перед тим, як почати вивчати автоматизацію вам слід подумати і визначитись з рядом питань:

  1. Визначіть, що і як хочете тестувати. Знайте, що автоматизація - це не панацея і вимагає великої кількості зусиль.
  2. Визначіться з мовою програмування, розберіться з базовими принципами та алгоритмами.
  3. Розберіться з html, css, xpath
  4. Швидше за все, ви почнете з веб автоматизації. Тож ознайомтесь з WebDriver. Сробуйте перші тести на ньому. Можна почати з фреймворків-обгорток до нього типу Selenide. Цей спрощений варіант Webdriver-y, в якому базові речі робляться простіше.
  5. Виберіть тест фреймворк. Його вибір зумовлений мовою, яку ви обрали до вивчення. Якщо це Java, то радимо обрати між jUnit та TestNG.

Після того, як ви освоїте ці 5 пунктів, у вас виробиться чітке бачення, як рухатись в цьому напрямку далі. Успіхів!