Дефекти, які усувають QA-інженери, і де можна навчитися цієї спеціальності

Promo
26.08.2021 13:15 Корисно

Головна мета, яка ставиться перед QA-інженером у процесі роботи, – це пошук і ліквідація дефектів ПЗ. У результаті на виході робочого процесу повинен вийти продукт, який повністю задовольняє вимоги замовника і не дає збоїв під час експлуатації.

Дефект (або, як його називають програмісти, баг) являє собою ту частину коду, яка містить алгоритмічні помилки. У програмуванні помилки поділяються на різні типи.

Типи помилок у програмуванні

  1. Синтаксичні помилки – ті, які порушують природний синтаксис, прийнятий у конкретній мові програмування. Пошук даного типу порушень автоматизований і закладений у самому середовищі програмування. Тому робоче середовище просто не дасть написати безглуздий код – воно повідомить про порушення.
  2. Помилки часу компіляції – наступний рівень. Вони виявляються під час спроби компіляції коду в разі, якщо порушені деякі правила побудови програми даною мовою.
  3. Найскладнішими для визначення є алгоритмічні помилки. За їх наявності компіляція може пройти успішно, але програма або взагалі не буде виконувати свою функцію, або буде виконувати її не так, як потрібно.

 

Основні варіанти процесу роботи тестера

Основними типами тестування, що застосовує в роботі QA-інженер, який пройшов навчання на курсах QA Manual, є:

  1. Ручне тестування.
  2. Автоматичне тестування.
  3. Навантажувальне тестування.

Перший варіант. Доцільний у тих випадках, коли на написання програми, що здійснює автотест, може знадобитися більше зусиль і часу, ніж на написання самого цільового продукту (що підлягає перевірці). Але помилково було б думати, що ручна перевірка – це легка справа і не вимагає спеціальних навичок. Навпаки, тут потрібна участь фахівця, який володіє великим обсягом знань, отриманих на курсі QA Manual

Другий варіант. Його головна перевага – після того, як тест створений, процес перевірки можна поставити на потік, значно зекономивши час і сили порівняно з ручним варіантом. Для роботи в даному напрямі необхідно володіти такими навичками:

– мови програмування (Python, Java та інші);

– інструменти автоматизації (Selenium, Katalon);

– середовища HTML, CSS;

– інтерфейс API;

– системи контролю версій;

– системи CI/CD.

Третій варіант. Під навантажувальним тестуванням розуміється експеримент з якістю роботи продукту з тим чи іншим рівнем навантаження. Це дозволяє визначити рівень масштабованості, безвідмовності та стабільності функціонування продукту.

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

Автор: Христина Островська