Git Product home page Git Product logo

module28's Introduction

Итоговый проект по разделу «Автоматизация тестирования»

Тест-кейсы и баг-репорты тут

Техническое задание Заказчика:

  1. Протестировать требования.

  2. Разработать тест-кейсы (не менее 15). Необходимо применить несколько техник тест-дизайна.

  3. Провести автоматизированное тестирование продукта (не менее 15 автотестов). Заказчик ожидает по одному автотесту на каждый написанный тест-кейс. Оформите свой набор автотестов в GitHub.

  4. Оформить описание обнаруженных дефектов. Во время обучения вы работали с разными сервисами и шаблонами, используйте их для оформления тест-кейсов и обнаруженных дефектов. Если дефекты не обнаружены, то подумайте и опишите 3 потенциально возможных дефекта на данном ресурсе.

Примененые методы при разработке проекта:

Для разработки тест-кейсов использованы методы "черного ящика", функционального тестирование, UX тестирование. Так же использованы техники тест дизайна : диаграмма состояний и переходов, классы эквивалентности, граничные значения и попарное тестирование.

Разработка проекта автотестирования выполнена по паттерну PageObject. Для разработки автотестов применялись библиотеки pytest, pytest-selenium. Использовались фикстуры, фикстуры параметризации, явные и неявные ожидания драйвером, различные способы описания локаторов (СSS_SELECTOR, XPATH, ID, CLASS_NAME, NAME). Проект разработан для операционной системы macOS и ей подобных.

Структура проекта:

Основная директория "28" содержит:

Требования_SSO_для_тестирования.docx - требования по проекту
README.md - содержит информацию о проекте.
В корневом каталоге проекта содержатся:

Директория driver содержит:

chromedriver.exe -Драйвер для управления браузером Chrome

Директория page содержит:

base_page.py - описание атрибутов и методов работы с базовой страницей.
auth_page.py - описание атрибутов и методов работы со страницей авторизации проекта.
reg_page.py - описание атрибутов и методов работы со страницей регистрации проекта.
reset_page.py - описание атрибутов и методов работы со страницей восстановления пароля проекта.
locators.py - описание локаторов проекта.

Директория tests содержит:

test_auth_page.py - тесты страницы авторизации проекта.
test_reg_page.py - тесты страницы регистрации проекта.
test_reset_page.py - тесты страницы восстановления пароля проекта.
config.py - описание значений элементов страниц и переменных.
conftest.py - описание фикстур для проекта.
pytest.ini - файл конфигурации Pytest.

Директория venv содержит виртуальное окружение проекта.

Запуск тестов производится из терминала следующими командами:

  1. Для тестов страницы авторизации: python3 -m pytest -v --driver Chrome --driver-path /driver/chromedriver tests/test_auth_page.py

  2. Для тестов страницы регистрации: python3 -m pytest -v --driver Chrome --driver-path /driver/chromedriver tests/test_reg_page.py

  3. Для тестов страницы восстановления пароля: python3 -m pytest -v --driver Chrome --driver-path /driver/chromedriver tests/test_reset_page.py

Тест-кейсы и баг-репорты тут

Прописанные тесты нестабильны, запускать следует в отображаемом графическом режиме chromedriver
Для включения драйвера в фоном режиме , в файле conftest.py расскоментировать параметр опций драйвера ("--headless")

module28's People

Contributors

maxjamal avatar

Watchers

 avatar

Forkers

rs16w

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.