QA Kickstart: 7-дневный тренинг для начинающих

  • Определение тестирования и его роли в разработке ПО
  • Основные виды тестирования: функциональное, нагрузочное, регрессионное и др.
  • Жизненный цикл разработки ПО и позиция тестирования в нём
  • Инструменты и технологии, используемые в тестировании
  • Основи тестування веб-додатків
  • Розуміння клієнт-серверної архітектури
  • Тестування інтерфейсу користувача та функціональності веб-додатків
  • Інструменти та технології для тестування веб-додатків

Вступление до основ тестирования ПО

Основи тестування веб-додатків

Розуміння вимог

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

Планування тестування

Важливо створити план тестування, який визначає обсяг тестування, ресурси, терміни та стратегію тестування.

Створення тест-кейсів

Тест-кейси описують послідовність дій для перевірки різних функцій та сценаріїв веб-додатку. Вони допомагають систематизувати тестування та забезпечити його повноту.

Виконання тестування

Тестувальник виконує тест-кейси, введення тестових даних, навігацію по веб-додатку та перевірку відповідності очікуваним результатам.

Виявлення та документування помилок

Якщо під час тестування виявляються помилки або неправильна робота веб-додатку, тестувальник повинен їх виявити, описати та документувати, зазначаючи кроки для відтворення помилки.

Валідація та верифікація

Тестувальник перевіряє, чи відповідає веб-додаток вимогам та специфікаціям. Валідація оцінює, чи відповідає веб-додаток потребам користувача, а верифікація перевіряє, чи веб-додаток відповідає технічним вимогам.

Регресійне тестування

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

Звітність

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

або відкрити у новій вкладці  Google Презентація

Для отримання додаткового матеріалу потрібно перейти за посиланням 
Google Drive

Розуміння клієнт-серверної архітектури

Клієнт

Клієнт – це програма або пристрій, який використовує послуги або ресурси, що надаються сервером. Клієнтська частина відповідає за взаємодію з користувачем та передачу запитів до сервера.

Сервер

Сервер – це програма або пристрій, який надає послуги або ресурси клієнтам. Серверна частина відповідає за обробку запитів, зберігання даних та відправку відповідей клієнтам.

Комунікація

Взаємодія між клієнтами та серверами відбувається через мережу. Клієнти надсилають запити до серверів, а сервери обробляють ці запити і надсилають назад результати або відповіді.

Розділення відповідальностей

Клієнтська та серверна частини виконують різні функції та мають свої відповідальності. Клієнти зазвичай відповідають за представлення даних, взаємодію з користувачем та надсилання запитів. Сервери займаються обробкою запитів, зберіганням та керуванням даними.

Масштабованість

Клієнт-серверна архітектура дозволяє гнучко масштабувати систему шляхом додавання або заміни серверів. Це дозволяє розподілити навантаження та забезпечити високу доступність системи.

Безпека

Клієнт-серверна архітектура може включати механізми захисту даних та автентифікації. Сервери можуть встановлювати правила доступу та контролювати доступ клієнтів до ресурсів.

Розуміння клієнт-серверної архітектури

Для отримання додаткового матеріалу потрібно перейти за посиланням 
Google Drive

або відкрити у новій вкладці  Google Презентація

Тестування інтерфейсу користувача та функціональності веб-додатків

Перевірка навігації

Перевірка, чи працюють всі елементи інтерфейсу користувача, чи можна легко переміщатися по сторінках, чи відповідають кнопки та посилання очікуваному функціоналу.

Перевірка введення даних

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

Тестування функціональності

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

Тестування взаємодії з базою даних

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

Адаптивність та резиновість

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

Тестування перетину браузерів

Перевірка, чи працює веб-додаток на різних браузерах (наприклад, Chrome, Firefox, Safari, Internet Explorer) без проблем або розбіжностей.

Тестування реакції на помилки

Перевірка, чи відображаються інформативні повідомлення про помилки, коли сталася помилка або виникли проблеми під час роботи веб-додатку.

Тестування інтерфейсу користувача та функціональності веб-додатків

Для отримання додаткового матеріалу потрібно перейти за посиланням 
Google Drive

або відкрити у новій вкладці  Google Презентація

Інструменти та технології для тестування веб-додатків

Selenium

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

JUnit/TestNG

JUnit і TestNG – це популярні фреймворки для написання тестів у мові Java. Вони надають розширені функціональні можливості для тестування веб-додатків, такі як підтримка анотацій, параметризовані тести, передумови та багато іншого.

Apache JMeter

Apache JMeter – це інструмент для виконання навантажувального тестування веб-додатків. Він дозволяє створювати та виконувати тестові плани, емулюючи велику кількість користувачів та перевіряючи продуктивність та стабільність додатку.

Postman

Postman – це популярний інструмент для тестування API веб-додатків. Він дозволяє легко відправляти запити до API, перевіряти відповіді, створювати автоматизовані тестові сценарії та генерувати звіти.

Browser DevTools

Веб-браузери, такі як Google Chrome та Mozilla Firefox, надають розширені інструменти розробника, які можна використовувати для тестування веб-додатків. Вони дозволяють аналізувати HTML, CSS, JavaScript, мережевий трафік та виконувати різні перевірки та відладку.

LoadUI: LoadUI

– це інструмент для виконання тестування навантаження веб-додатків. Він дозволяє створювати складні сценарії навантаження, засновані на реальному споживанні ресурсів та взаємодії користувачів.

Cypress

Cypress – це інструмент для автоматизованого тестування веб-додатків, який пропонує простий та елегантний синтаксис. Він забезпечує можливість виконання тестів у реальному часі, включаючи попередню переглядову панель, що дозволяє переглядати візуальне представлення веб-додатку під час виконання тесту.

Інструменти та технології для тестування веб-додатків

Для отримання додаткового матеріалу потрібно перейти за посиланням 
Google Drive

або відкрити у новій вкладці  Google Презентація

Анекдоти

Запитання: Яким чином тестувальники проводять свої вихідн.
Відповідь: Вони проводять їх в "статусі невдачі" (bug status)!

Тестувальник питає програміста: "Чому ти написав код без помилок?"
Програміст відповідає: "Це просто тимчасовий баг-фріз, який триває до моменту, коли ти почнеш його тестувати!"

Колега запитує тестувальника: "Чому ти так впевнений, що твоя робота допомогла покращити якість продукту?"
Тестувальник відповідає: "Коли клієнт каже: 'Я знаю, що щось не працює, бо ви знайшли це перед тим, як я це зробив!'"

Відгадай

Відповіді надіслати в телеграм бот

Цей метод тестування включає перевірку функціональності веб-додатку без знання його внутрішньої реалізації. Що це?

Що використовується для оцінки ступеня покриття коду тестами веб-додатку?

Цей тип тестування перевіряє, як добре веб-додаток працює під навантаженням і стресом. Що це?

Надайте відповіді

Відповіді надіслати в телеграм бот або в скайп групу

Що це за процес, який включає створення тестових сценаріїв та їх виконання для перевірки функціональності та якості веб-додатків?

Цей інструмент для тестування веб-додатків використовується для записування та відтворення тестових сценаріїв на різних браузерах. Його назва починається зі слова “Селен”.

Який термін використовується для опису процесу перевірки, чи відповідає веб-додаток очікуванням користувача та вимогам функціональності?

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

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

 

Смішні моменти

Якщо клієнт-серверна архітектура була людиною, то клієнт був би тим, хто постійно запитує щось у сервера, а сервер - тим, хто має відповіді на всі запитання, але ігнорує їх.

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

В деяких випадках клієнт-серверна архітектура схожа на ситуацію, коли ви намагаєтеся замовити їжу в ресторані, але офіціант ніколи не приносить вам страви, яку ви замовили.

Іноді, коли ви надсилаєте запит до сервера, він повертає вам таку кількість даних, що ви замість відповіді бачите лише власне здивоване обличчя в браузері.

Коли клієнт і сервер мають різні версії протоколів, це схоже на ситуацію, коли двоє людей розмовляють на різних мовах та намагаються зрозуміти одне одного.

Відгадай

Відповіді надіслати в телеграм бот

Я двосторонній, забезпечую зв’язок між клієнтом та сервером.
Дані через мене передаються з легкістю в обидві сторони.
Хто я в цій архітектурі, скажи мені, будь ласка?

Я зберігаю і оброблюю дані, що відправляються від клієнта.
Потім, знову ж таки, дані повертаються назад, не забудь!
Я місце, де знаходиться ця інформація, хто я, скажи, будь ласка?

Я місце збереження даних на сервері,
Хоча вони можуть бути розподілені, навіть не в країні тій самій.
Знаходжуся на сервері, у своєму спеціальному місці,
Ім’я моє, назви мене, що це за місце таке?

Виконай завдання

Створіть google doc та надайте доступ на перегляд  виконаного завдання.
Відправити посилання в телеграм бот або в скайп.

Завдання: Вам потрібно протестувати веб-додаток для онлайн-магазину(наприклад, rozetka), що продає електроніку. Веб-додаток має наступні функціональність та компоненти:

  1. Головна сторінка:

    • Перевірка відображення промоакційних товарів на головній сторінці.
    • Перевірка функціональності пошуку товарів за категоріями або ключовими словами.
    • Перевірка відображення та коректності рейтингу товарів та відгуків.
  2. Сторінка товару:

    • Перевірка відображення інформації про товар, такої як назва, ціна, опис, характеристики та зображення.
    • Перевірка додавання товару до кошика та коректності підрахунку загальної суми.
    • Перевірка можливості залишити відгук про товар та його відображення на сторінці товару.
  3. Кошик:

    • Перевірка відображення обраного товару в кошику.
    • Перевірка можливості зміни кількості товару в кошику.
    • Перевірка функціональності оформлення замовлення та вводу адреси доставки.
  4. Авторизація та реєстрація:

    • Перевірка можливості входу в систему зареєстрованими користувачами.
    • Перевірка можливості реєстрації нових користувачів з валідацією полів.
  5. Платіжна система:

    • Перевірка функціональності вибору способу оплати.
    • Перевірка відображення платіжних інформаційних даних та підтвердження оплати.

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

День 1

Вступление до тестирования

Начать обучение

День 2

Типы тестирования

Начать обучение

День 5

Тестирование мобильных приложений

Начать обучение

Мы также присутствуем в социальных сетях! Подписывайтесь на нас и получайте последние новости, акции, скидки, бесплатные тренинги и участие в марафонах.
Будем рады видеть вас в нашем сообществе!

Курсы

Авторское право © 2023 Школа подготовки тестировщиков