AQA Автоматизація тестування Урок 6, як змінити порядок запуску тестів.

Привіт, дякую що заглянули в опис ось лінки:
Пайтон для початківців: • Python Basic
Пайтон рівень 2: • Python level 2
Автоматичне тестування на пайтоні(Pytest) • Pytest QA Automation
Як працювати з гітом: • GIT
Ось тут як встановлювати пайчарм та пайтон: • Встановлення Python та...
Код з уроку - github.com/Pasha-lt/code_way/...
Задачі для кращого розуміння матеріалу:
Задача 1
Напишіть три тестові функції: test_first(), test_second(), test_third(). Використайте декоратори або для встановлення порядку виконання цих тестів. Наприклад, переконайтеся, що test_first() виконується перед test_second(), а test_second() - перед test_third().
Задача 2
Створіть тести, де результат виконання одного тесту впливає на наступний. Наприклад, переконайтеся, що після успішного виконання test_login() виконується test_access_granted(), а після невдалого виконання test_login() - test_access_denied()
Задача 3
Створіть 10 тестів (можно взяти з другого уроку) промаркуйте порядок виконання від 1 до 10. Створіть фікстуру test_data зі області видимості function та переконайтеся, що кожен тест викликає фікстуру, яка виводить "test start" перед тестом і "test finish" після завершення тесту. Підтвердіть, що тести виконуються у вірному порядку відповідно до маркерів, а також виводять необхідні повідомлення фікстури.
Тести для кращого розуміння матеріалу:
docs.google.com/forms/d/e/1FA...

Пікірлер: 4

  • @tluma4
    @tluma42 ай бұрын

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

  • @VladyslavPustovalov
    @VladyslavPustovalov26 күн бұрын

    Доброго дня! Дякую за ваші уроки! Ви казали писати питання в коментарі якщо виникнуть - пишу)) Задача 3 - виявилась найлегшою - виконав за допомогою 'pytest.mark.order(...)' + створивши фікстуру зі скоупом 'function' Задача 1 - виконав за допомогою бібліотеки 'pytest-depends', встановивши залежності між тестами - всі виконуються послідовно, і тільки якщо попередній тест пройшов. Підкажіть чи коректне це виконання? Задача 2 - ось тут виникли труднощі та основне питання. Нажаль не зрозумів як зробити залежності від проходження або фейлу тесту. І для гугління не виходить сформувати коректний запит. I Chat-GPT щось почав радити бібліотеку pytest-dependency, а також будувати фікстури з if-else всередині (мені це показалось якимсь невірним підходом).

  • @code_way_ua

    @code_way_ua

    25 күн бұрын

    Доброго дня. 1) Радив би використовувати тільки 'order'. Не гратись з залежностями. 2) Так як це варіант для навчання то ви можете просто в самих тестах змінювати якусь глобальну зміну і таким чином утворити залежність тестів, що якщо порядок буже змінений то тести зломвються. А можете просто ордер проставити, це буде простіщий варіант. Взагалі в комерційних проектах намагайтесь уникати залежностей, але ідеальних проектів нажаль не існує). 3) Вітаю з рішенням.

  • @VladyslavPustovalov

    @VladyslavPustovalov

    25 күн бұрын

    @@code_way_ua Дякую за відповідь!)

Келесі