Урок 1Пріоритизація для автоматизації: які тести автоматизувати першими (API, критичні потоки, регресія), чому та критерії ROI автоматизаціїЦей підрозділ пояснює, як пріоритизувати тести для автоматизації, фокусуючись на API, критичних користувацьких потоках та наборах регресії, і визначає критерії ROI автоматизації, підтримуваністі та зменшення ризиків для керівництва інвестиційними рішеннями.
Виявлення високоцінних кандидатів для автоматизаціїАвтоматизація API-тестів перед складними UI-потокамиАвтоматизація критичних шляхів та щасливих сценаріївПобудова стабільного каркасу автоматизації регресіїРозрахунок та відстеження ROI автоматизаціїРішення, коли не автоматизувати тестУрок 2Блокування релізів та критерії виходу тестів, пов'язані з критеріями прийняття та метрикамиЦей підрозділ визначає блокування релізів та критерії виходу тестів, показуючи, як пов'язати їх з критеріями прийняття, ризиками та метриками, такими як рівні дефектів, покриття та продуктивність, щоб рішення про реліз були прозорими та базувалися на доказах.
Визначення чітких критеріїв входу та виходуПов'язування критеріїв виходу з критеріями прийняттяМетрики якості для рішень про запуск чи ніПороги серйозності дефектів та обмеження відкритих багівОбробка винятків на основі ризиків та відмовДокументування рішень про реліз та підписівУрок 3Трасування: відображення вимог на тести та звітність про покриттяЦей підрозділ охоплює трасування вимог до тестів, включаючи побудову та підтримку матриць трасування, пов'язування тестів з користувацькими історіями та ризиками, та звітність про прогалини покриття, що інформують планування та рішення про реліз.
Створення легкої матриці трасуванняПов'язування користувацьких історій, ризиків та тестових випадківТрасування в agile-інструментах та управлінні тестамиВимірювання покриття понад прості підрахункиВиявлення та пріоритизація прогалин покриттяВикористання трасування в аудитах та відповідностіУрок 4Необхідні типи тестування: функціональне, регресійне, smoke/sanity, E2E, продуктивність/навантаження/стрес, безпека, доступність, кросбраузерне та адаптивне, локалізація та валідація данихЦей підрозділ окреслює необхідні типи тестів для веб-додатків, включаючи функціональне, регресійне, smoke, end-to-end, продуктивність, безпеку, доступність, кросбраузерне, адаптивне, локалізацію та валідацію даних, з рекомендаціями щодо застосування кожного.
Функціональні та регресійні набори для основних потоківSmoke та sanity перевірки для швидкого зворотного зв'язкуЦілі тестів продуктивності, навантаження та стресуТестування безпеки для поширених веб-вразливостейТести доступності, кросбраузерні та адаптивніРозгляди локалізації та валідації данихУрок 5Стратегія ручного тестування: дослідницьке, юзабіліті, ad-hoc, тестування на основі сесій, валідація крайніх випадківЦей підрозділ фокусується на стратегіях ручного тестування, що доповнюють автоматизацію, включаючи дослідницьке, юзабіліті, ad-hoc та тестування на основі сесій, плюс техніки для виявлення крайніх випадків та фіксації якісних тестових нотаток і хартій.
Планування та структурування дослідницьких тестових хартійЕвристики та тури для виявлення прихованих дефектівОцінка юзабіліті для веб-потоків та UI-патернівУправління тестуванням на основі сесій та нотаткиAd-hoc тестування для швидких проб ризиків та сплесківПроектування сценаріїв крайніх випадків та граничних перевірокУрок 6Тестові середовища, налаштування staging, маскування даних, віртуалізація сервісів для платежів третіх сторін та каналів реального часуЦей підрозділ деталізує, як проектувати та керувати тестовими середовищами для веб, включаючи налаштування staging, реалістичні, але замасковані дані, та віртуалізацію сервісів для платежів третіх сторін та каналів реального часу для безпечного, повторюваного тестування.
Проектування staging для відображення ризиків продакшенуСтратегії для синтетичних та замаснованих тестових данихКерування конфігурацією середовища та дрейфомВіртуалізація сервісів для платіжних шлюзівСимуляція каналів реального часу та вебхуківМоніторинг здоров'я та доступності середовищаУрок 7Стратегія автоматизації тестів: вибір фреймворків, тестова піраміда, інтеграція CI/CD, керування тестовими даними та середовищемЦей підрозділ визначає стійку стратегію автоматизації для веб-додатків, охоплюючи вибір фреймворків, тестову піраміду, інтеграцію CI/CD та надійні підходи до керування тестовими даними та середовищем, що тримають набори швидкими, стабільними та підтримуваніми.
Критерії вибору фреймворків автоматизації UI та APIПроектування підтримуваної тестової піраміди для веб-продуктівІнтеграція автоматизованих тестів у CI/CD-пайплайниКерування тестовими даними: сівба, фабрики, анонімізаціяСтабілізація нестабільних тестів та обробка асинхронної поведінкиВерсіонування тестів поряд з кодом додаткаУрок 8Огляд компонентів стратегії тестування: обсяг, рівні, типи, середовища, розклад, роліЦей підрозділ розбирає основні компоненти стратегії тестування, включаючи обсяг, рівні, типи, середовища, розклад та ролі, і показує, як документувати їх чітко, щоб команди мали спільне розуміння цілей якості.
Визначення функцій в обсязі та поза обсягомВибір відповідних рівнів тестування для кожного шаруВибір типів тестів на основі ризиків продуктуПланування середовищ та необхідних конфігураційДокументування ролей, власності та RACI-діаграмПідтримка та версіонування документа стратегіїУрок 9Розклад тестування та розподіл ресурсів для часової шкали бетиЦей підрозділ пояснює, як планувати тестові активності та розподіляти людей, середовища та інструменти по часовій шкалі бети, балансуючи ризики, обсяг та обмеження, тримаючи стейкхолдерів інформованими реалістичними, орієнтованими на дані планами.
Визначення фаз тестування в часовій шкалі бетиОцінка зусиль за ризиком та складністюРозподіл тестувальників, інструментів та середовищУзгодження тестових віх з віхами релізуБуфери, непередбачені ситуації та обробка зсувівКомунікація розкладу та змін стейкхолдерамУрок 10Рівні тестування: unit, integration, component, system, end-to-end — цілі та приклади результатів для кожногоЦей підрозділ пояснює кожен рівень тестування для веб-систем — unit, integration, component, system та end-to-end — уточнюючи цілі, власність, приклади результатів та як рівні взаємодіють для надання шаруватого зворотного зв'язку якості.
Unit-тести: обсяг, ізоляція та контракти кодуІнтеграційні тести для сервісів та шарів данихКомпонентні тести для UI-віджетів та модулівСистемні тести для повної поведінки веб-додаткаEnd-to-end тести для критичних користувацьких шляхівВибір власності та інструментів на рівень