Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
56e2606
Начал проект
Apr 18, 2025
0a6041a
Добавил url ручек
Apr 18, 2025
3cfe2e4
Добаыил метод залогинивания курьера
Apr 18, 2025
9759054
Добавил метод удаления логина курьера
Apr 18, 2025
1327e38
Добавил conftest и сделал первый тест
Apr 19, 2025
fb81d79
Добавил три теста, сделал генерацию body для создания курьера в отдел…
Apr 19, 2025
1a85c1f
Добавил тест проверки ответа на создание курьера
Apr 19, 2025
560d959
Добавил тест проверки ответа json на создание курьера
Apr 19, 2025
214abc1
Добавил тесты - если одного из полей нет, запрос возвращает ошибку;
Apr 19, 2025
94dc305
Закончил первое задание, рефакторинг метода создание двух пользовател…
Apr 19, 2025
bce640d
рефакторинг
Apr 19, 2025
ba65d83
Исправил проблему с запуском Allure
Apr 20, 2025
c2f6b92
Перешел ко второму заданию.
Apr 20, 2025
e633de6
Модернизировал метод залогинивания.
Apr 20, 2025
54e194d
Добавил пару тестов
Apr 20, 2025
37fb5a9
Закончил тесты второго задания
Apr 20, 2025
eeeeeae
Закончил тесты третьего задания
Apr 20, 2025
d691509
Закончил тесты четвертого задания
Apr 20, 2025
5206d79
Добавил текстовые константы.
Apr 20, 2025
5f49074
Добавил отчеты Allure.
Apr 20, 2025
7e73ff0
Убрал ссылки в отдельный файл.
Apr 23, 2025
cd4410b
Убрал прямую ссылку из login_method.py.
Apr 23, 2025
01fc5e9
Исправил в ассертах проверку и кода ответа и тела.
Apr 23, 2025
e800097
Расставил степ аллюры в методах
Apr 23, 2025
0ef5214
Рефакторинг
Apr 23, 2025
ffe131e
Рефакторинг
Apr 23, 2025
88ec76d
Рефакторинг
Apr 23, 2025
a669c3b
Рефакторинг
Apr 23, 2025
12d7ccf
Рефакторинг
Apr 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
164 changes: 164 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
### Python template
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
.pybuilder/
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/latest/usage/project/#working-with-version-control
.pdm.toml
.pdm-python
.pdm-build/

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# pytype static type analyzer
.pytype/

# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/

Binary file modified README.md
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"name": "Test UnSuccessful two login creation with the same data", "status": "passed", "description": "Тут пытаемся создать два курьера с одинаковыми логинами и проверяем ответ API", "steps": [{"name": "Создаем второго курьера", "status": "passed", "steps": [{"name": "Создаем запрос создания курьера", "status": "passed", "start": 1745442149377, "stop": 1745442149647}], "start": 1745442149377, "stop": 1745442149647}, {"name": "Проверяем, что код ответа и тело соответствует документации", "status": "passed", "start": 1745442149647, "stop": 1745442149647}], "start": 1745442149377, "stop": 1745442149647, "uuid": "3bbbc257-1b41-4b42-914a-edeeaf112e28", "historyId": "4fa3faee738336512cd53e3ddbe6ffd9", "testCaseId": "4fa3faee738336512cd53e3ddbe6ffd9", "fullName": "tests.test_create_courier.TestCreateLogin#test_create_two_courier_with_same_data", "labels": [{"name": "parentSuite", "value": "tests"}, {"name": "suite", "value": "test_create_courier"}, {"name": "subSuite", "value": "TestCreateLogin"}, {"name": "host", "value": "Gad-pC"}, {"name": "thread", "value": "3488-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "tests.test_create_courier"}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "8de2c51b-de56-480d-8467-1fc9708f6829", "children": ["211ab2bc-4d48-4edc-b3fc-23fe98a72bd5"], "befores": [{"name": "generate_without_password_data", "status": "passed", "start": 1745164238452, "stop": 1745164238786}], "start": 1745164238452, "stop": 1745164238787}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "7a2497b1-92e3-4e2e-be33-586e286b54e4", "children": ["592db9e4-78a1-4ca8-9b1a-54dbac055fab", "32116ec2-2da1-4434-ac52-e52e0362abdc", "83c5dcc1-bc83-4484-bf9f-19c1e1e76609", "0bfeeee4-bfef-48ad-99a5-c27af83dd68b"], "befores": [{"name": "_xunit_setup_class_fixture_TestCreateOrder", "status": "passed", "start": 1745442079458, "stop": 1745442079458}], "afters": [{"name": "_xunit_setup_class_fixture_TestCreateOrder::0", "status": "passed", "steps": [{"name": "Создаем запрос отмены заказа", "status": "passed", "start": 1745442080916, "stop": 1745442081112}, {"name": "Создаем запрос отмены заказа", "status": "passed", "start": 1745442081112, "stop": 1745442081363}, {"name": "Создаем запрос отмены заказа", "status": "passed", "start": 1745442081363, "stop": 1745442081582}, {"name": "Создаем запрос отмены заказа", "status": "passed", "start": 1745442081582, "stop": 1745442081783}], "start": 1745442080916, "stop": 1745442081783}], "start": 1745442079458, "stop": 1745442081783}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "4f56d23b-0258-43c5-b828-a41737d2b05c", "befores": [{"name": "order_number", "status": "passed", "start": 1745442080620, "stop": 1745442080620}], "start": 1745442080620, "stop": 1745442080916}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "791a679e-2f64-4640-8bf4-07c30af7f12c", "children": ["8196ab00-1550-4128-80d8-4a103f48847c"], "befores": [{"name": "get_login_with_unreal_data", "status": "passed", "start": 1745443182212, "stop": 1745443182212}], "start": 1745443182212, "stop": 1745443182556}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "98a30fc0-6385-4141-ac13-01cb9e99a9a5", "befores": [{"name": "order_number", "status": "passed", "start": 1745442079458, "stop": 1745442079458}], "start": 1745442079458, "stop": 1745442079893}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"name": "Courier creation returning code 201", "status": "passed", "description": "Проверка, что запрос возвращает правильный код ответа;", "start": 1745162641225, "stop": 1745162641225, "uuid": "77c52208-bed8-4812-aa5b-07009e943a8d", "historyId": "07f7efa28a4da62d4f33da0f9ad386fb", "testCaseId": "07f7efa28a4da62d4f33da0f9ad386fb", "fullName": "tests.test_create_login.TestCreateLogin#test_create_login_ok", "labels": [{"name": "parentSuite", "value": "tests"}, {"name": "suite", "value": "test_create_login"}, {"name": "subSuite", "value": "TestCreateLogin"}, {"name": "host", "value": "Gad-pC"}, {"name": "thread", "value": "16848-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "tests.test_create_login"}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "70ac0211-a56c-4315-866d-0ee023a2724c", "children": ["950def3d-5b5b-43bc-bb1e-8da2f60f7e7d"], "befores": [{"name": "generate_login_data", "status": "passed", "start": 1745442147897, "stop": 1745442147897}], "afters": [{"name": "generate_login_data::0", "status": "passed", "steps": [{"name": "Удаляем курьера", "status": "passed", "steps": [{"name": "Создаем запрос залогинивания курьера", "status": "passed", "start": 1745442148541, "stop": 1745442148867}, {"name": "Создаем запрос удаления курьера", "status": "passed", "start": 1745442148868, "stop": 1745442149097}], "start": 1745442148541, "stop": 1745442149097}], "start": 1745442148541, "stop": 1745442149097}], "start": 1745442147897, "stop": 1745442149097}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"name": "Test Create Order", "status": "passed", "description": "Тестирование, что можно указать один из цветов — BLACK или GREY; можно указать оба цвета; можно совсем не указывать цвет; тело ответа содержит track.", "parameters": [{"name": "order_number", "value": "{'firstName': 'Naruto', 'lastName': 'Uchiha', 'address': 'Konoha, 142 apt.', 'metroStation': 4, 'phone': '+7 800 355 35 35', 'rentTime': 5, 'deliveryDate': '2025-06-06', 'color': ['BLACK', ''], 'comment': 'Saske, come back to Konoha'}"}], "start": 1745164232131, "stop": 1745164232421, "uuid": "08933b91-5626-4ff8-9c44-d1954f0ca1af", "historyId": "e01a3b198a540864579056ade53a961d", "testCaseId": "a5075a57ae60a8cacb3412e8e2ea14fd", "fullName": "tests.test_creat_order.TestCreateOrder#test_create_orders", "labels": [{"name": "parentSuite", "value": "tests"}, {"name": "suite", "value": "test_creat_order"}, {"name": "subSuite", "value": "TestCreateOrder"}, {"name": "host", "value": "Gad-pC"}, {"name": "thread", "value": "14972-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "tests.test_creat_order"}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"name": "Test Error after login incorrect data", "status": "passed", "description": "Система вернёт ошибку, если неправильно указать логин или пароль;", "start": 1745162646123, "stop": 1745162646123, "uuid": "68b17a18-f70c-4b00-989b-08f40b4484f2", "historyId": "5fdeda63ac0717cc2f1841d7015f3338", "testCaseId": "5fdeda63ac0717cc2f1841d7015f3338", "fullName": "tests.test_login.TestLogin#test_login_with_icorrect_password", "labels": [{"name": "parentSuite", "value": "tests"}, {"name": "suite", "value": "test_login"}, {"name": "subSuite", "value": "TestLogin"}, {"name": "host", "value": "Gad-pC"}, {"name": "thread", "value": "16848-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "tests.test_login"}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "277dee8e-0a2d-483b-b6ae-e9d621c7ca00", "children": ["c2263890-a2cc-4cdd-a26c-eac00f5164e5"], "befores": [{"name": "generate_two_courier_with_same_login_data", "status": "passed", "steps": [{"name": "Создаем курьера", "status": "passed", "steps": [{"name": "Создаем запрос создания курьера", "status": "passed", "start": 1745442082443, "stop": 1745442082684}], "start": 1745442082443, "stop": 1745442082685}], "start": 1745442082443, "stop": 1745442082685}], "afters": [{"name": "generate_two_courier_with_same_login_data::0", "status": "broken", "statusDetails": {"message": "AttributeError: type object 'Url' has no attribute 'DELETE_COURIER_URL'. Did you mean: 'CREATE_COURIER_URL'?\n", "trace": " File \"C:\\Users\\gad\\PycharmProjects\\Sprint_7\\.venv\\Lib\\site-packages\\allure_commons\\_allure.py\", line 231, in __call__\n return self._fixture_function(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"C:\\Users\\gad\\PycharmProjects\\Sprint_7\\.venv\\Lib\\site-packages\\_pytest\\fixtures.py\", line 907, in _teardown_yield_fixture\n next(it)\n File \"C:\\Users\\gad\\PycharmProjects\\Sprint_7\\conftest.py\", line 33, in generate_two_courier_with_same_login_data\n LoginMethods.delete_login(LoginMethods.login_in_system(test_body['login'], test_body['password']).json()[\"id\"])\n File \"C:\\Users\\gad\\PycharmProjects\\Sprint_7\\methods\\login_method.py\", line 30, in delete_login\n response_delete = requests.delete(f\"{urls.Url.MAIN_URL}{urls.Url.DELETE_COURIER_URL}{login_id}\", params=params)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"}, "steps": [{"name": "Удаляем курьера", "status": "broken", "statusDetails": {"message": "AttributeError: type object 'Url' has no attribute 'DELETE_COURIER_URL'. Did you mean: 'CREATE_COURIER_URL'?\n", "trace": " File \"C:\\Users\\gad\\PycharmProjects\\Sprint_7\\conftest.py\", line 33, in generate_two_courier_with_same_login_data\n LoginMethods.delete_login(LoginMethods.login_in_system(test_body['login'], test_body['password']).json()[\"id\"])\n File \"C:\\Users\\gad\\PycharmProjects\\Sprint_7\\methods\\login_method.py\", line 30, in delete_login\n response_delete = requests.delete(f\"{urls.Url.MAIN_URL}{urls.Url.DELETE_COURIER_URL}{login_id}\", params=params)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"}, "steps": [{"name": "Создаем запрос залогинивания курьера", "status": "passed", "start": 1745442082972, "stop": 1745442083297}, {"name": "Создаем запрос удаления курьера", "status": "broken", "statusDetails": {"message": "AttributeError: type object 'Url' has no attribute 'DELETE_COURIER_URL'. Did you mean: 'CREATE_COURIER_URL'?\n", "trace": " File \"C:\\Users\\gad\\PycharmProjects\\Sprint_7\\methods\\login_method.py\", line 30, in delete_login\n response_delete = requests.delete(f\"{urls.Url.MAIN_URL}{urls.Url.DELETE_COURIER_URL}{login_id}\", params=params)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"}, "start": 1745442083297, "stop": 1745442083297}], "start": 1745442082972, "stop": 1745442083298}], "start": 1745442082972, "stop": 1745442083299}], "start": 1745442082443, "stop": 1745442083299}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "cabac44c-6ca3-4e25-bf6c-e8b7f0d5c1ab", "children": ["12263b08-8ccd-4f70-b868-9031280b7307"], "befores": [{"name": "generate_two_courier_with_same_login_data", "status": "passed", "start": 1745164238789, "stop": 1745164239353}], "afters": [{"name": "generate_two_courier_with_same_login_data::0", "status": "passed", "start": 1745164239355, "stop": 1745164239829}], "start": 1745164238789, "stop": 1745164239829}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "d3708032-4ea2-4f90-b27e-3dd2bbf8480b", "children": ["b892e1e0-52fd-4eff-946d-e80728fbc490"], "befores": [{"name": "generate_login_data", "status": "passed", "start": 1745442158155, "stop": 1745442158155}], "afters": [{"name": "generate_login_data::0", "status": "passed", "steps": [{"name": "Удаляем курьера", "status": "passed", "steps": [{"name": "Создаем запрос залогинивания курьера", "status": "passed", "start": 1745442158783, "stop": 1745442159016}, {"name": "Создаем запрос удаления курьера", "status": "passed", "start": 1745442159016, "stop": 1745442159224}], "start": 1745442158783, "stop": 1745442159224}], "start": 1745442158783, "stop": 1745442159224}], "start": 1745442158155, "stop": 1745442159224}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "1bac7d22-0b6d-4701-b284-1556c9016970", "children": ["674efbd5-48ca-45a2-8507-be28e4d56075"], "befores": [{"name": "generate_login_data", "status": "passed", "start": 1745442154226, "stop": 1745442154227}], "afters": [{"name": "generate_login_data::0", "status": "passed", "steps": [{"name": "Удаляем курьера", "status": "passed", "steps": [{"name": "Создаем запрос залогинивания курьера", "status": "passed", "start": 1745442154820, "stop": 1745442155074}, {"name": "Создаем запрос удаления курьера", "status": "passed", "start": 1745442155074, "stop": 1745442155309}], "start": 1745442154820, "stop": 1745442155309}], "start": 1745442154820, "stop": 1745442155309}], "start": 1745442154226, "stop": 1745442155309}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "c0ae8ee5-5564-42c3-9018-54a4fbcbbc10", "children": ["48ad8212-3551-4b13-8f28-89f0f7ec946d"], "befores": [{"name": "generate_without_login_data", "status": "passed", "start": 1745162641766, "stop": 1745162641995}], "start": 1745162641766, "stop": 1745162641996}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"name": "Test UnSuccessful two login creation with the same data", "status": "passed", "description": "Если создать пользователя с логином, который уже есть, возвращается ошибка.", "start": 1745136042759, "stop": 1745136042760, "uuid": "8d4185e9-e099-429a-bc37-a35d924e794f", "historyId": "3a678fc63de5a75065fde7a8090072d3", "testCaseId": "3a678fc63de5a75065fde7a8090072d3", "fullName": "tests.test_create_login.TestCreateLogin#test_create_two_courier_with_same_login_data", "labels": [{"name": "parentSuite", "value": "tests"}, {"name": "suite", "value": "test_create_login"}, {"name": "subSuite", "value": "TestCreateLogin"}, {"name": "host", "value": "Gad-pC"}, {"name": "thread", "value": "13844-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "tests.test_create_login"}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "4894b3a6-26e9-406b-81f2-977b77d45865", "children": ["084c03c6-cc13-4beb-ac4b-d2b8ddccf46a"], "befores": [{"name": "get_login_with_incorrect_password", "status": "passed", "start": 1745164241719, "stop": 1745164242666}], "afters": [{"name": "get_login_with_incorrect_password::0", "status": "passed", "start": 1745164242667, "stop": 1745164242858}], "start": 1745164241719, "stop": 1745164242858}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "89dc4a55-3afd-4bc8-a687-c32b610b5cbc", "befores": [{"name": "order_number", "status": "passed", "start": 1745443178309, "stop": 1745443178309}], "start": 1745443178309, "stop": 1745443178802}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"uuid": "afd51184-d01c-4599-ba73-b2b727eec233", "children": ["2e2d0cf5-7b75-4363-b16c-6f76a8ee380e"], "befores": [{"name": "generate_login_data", "status": "passed", "start": 1745443188379, "stop": 1745443188379}], "afters": [{"name": "generate_login_data::0", "status": "passed", "steps": [{"name": "Удаляем курьера", "status": "passed", "steps": [{"name": "Создаем запрос залогинивания курьера", "status": "passed", "start": 1745443188999, "stop": 1745443189261}, {"name": "Создаем запрос удаления курьера", "status": "passed", "start": 1745443189261, "stop": 1745443189468}], "start": 1745443188999, "stop": 1745443189468}], "start": 1745443188999, "stop": 1745443189468}], "start": 1745443188379, "stop": 1745443189468}
Loading