/
moonlight78
/
avito_tech
Обзор
Документация
Войти
/
moonlight78
/
avito_tech
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test_api.py
112 строк
3 KB
moonlight78
create test_api.py
12 сен 2024, 21:59
12 сен 2024, 21:59
27d01eb
Код
Авторство
О чём код?
import pytest import requests import json BASE_URL = "https://qa-internship.avito.com" # Тест кейс для создания объявления def test_create_advertisement_success(): sellerID = 123456 title = "Test advertisement" description = "This is a test advertisement" payload = { "sellerID": sellerID, "title": title, "description": description } response = requests.post(f"{BASE_URL}/ad", json=payload) assert response.status_code == 201 assert response.json()["adID"] is not None def test_create_advertisement_missing_fields(): sellerID = 123456 # Отсутствует "title" payload = { "sellerID": sellerID, "description": "This is a test advertisement" } response = requests.post(f"{BASE_URL}/ad", json=payload) assert response.status_code == 400 def test_create_advertisement_invalid_sellerID(): # Некорректный sellerID (строка вместо числа) sellerID = "invalid_sellerID" title = "Test advertisement" description = "This is a test advertisement" payload = { "sellerID": sellerID, "title": title, "description": description } response = requests.post(f"{BASE_URL}/ad", json=payload) assert response.status_code == 400 # Тест кейс для получения объявления по ID def test_get_advertisement_by_id_success(): # Сначала создаем объявление sellerID = 123456 title = "Test advertisement" description = "This is a test advertisement" payload = { "sellerID": sellerID, "title": title, "description": description } response = requests.post(f"{BASE_URL}/ad", json=payload) adID = response.json()["adID"] # Получаем объявление по ID response = requests.get(f"{BASE_URL}/ad/{adID}") assert response.status_code == 200 assert response.json()["adID"] == adID assert response.json()["sellerID"] == sellerID assert response.json()["title"] == title assert response.json()["description"] == description def test_get_advertisement_by_id_not_found(): # Несуществующий adID adID = 999999 response = requests.get(f"{BASE_URL}/ad/{adID}") assert response.status_code == 404 # Тест кейс для получения объявлений по SellerID def test_get_advertisements_by_sellerID_success(): # Создаем несколько объявлений от одного sellerID sellerID = 123456 for i in range(3): title = f"Test advertisement {i}" description = f"This is test advertisement {i}" payload = { "sellerID": sellerID, "title": title, "description": description } response = requests.post(f"{BASE_URL}/ad", json=payload) # Получаем объявления по SellerID response = requests.get(f"{BASE_URL}/ad/seller/{sellerID}") assert response.status_code == 200 assert len(response.json()) == 3 def test_get_advertisements_by_sellerID_not_found(): # Несуществующий SellerID sellerID = 999999 response = requests.get(f"{BASE_URL}/ad/seller/{sellerID}") assert response.status_code == 404