Íàïèñàòü òåñò-êåéñû äëÿ ìåòîäîâ API (íà îñíîâå äîêóìåíòàöèè â Swagger)

Çàäàíèå çàêðûòî
Ñòàòóñ ðàáî÷åé îáëàñòè:Çàâåðøåíî
Ñòîèìîñòü:Äîãîâîðíàÿ
Ñðîê âûïîëíåíèÿ:3 äíÿ
Âàðèàíòû îïëàòû:Ïëàíèðóåòñÿ èñïîëüçîâàòü Áåçîïàñíóþ ñäåëêó
Äàòà ïóáëèêàöèè:2025-03-17 12:40
Áûë(à) íà ñàéòå:2025-03-23 20:05

Íàïèñàòü òåñò-êåéñû äëÿ ìåòîäîâ API (íà îñíîâå äîêóìåíòàöèè â Swagger)

 
Çàäà÷à

Äîêóìåíòàöèÿ ïî ìåòîäàì - https://petfriends.skillfactory.ru/apidocs/#/. Íåîáõîäèìî äëÿ êàæäîãî ìåòîäà íàïèñàòü òåñò-êåéñû, êåéñû äîëæíû ñîäåðæàòü: Ïðîâåðêè áåç ïàðàìåòðîâ;
Ïðîâåðêè îáÿçàòåëüíûõ ïàðàìåòðîâ;
Ïðîâåðêè îïöèîíàëüíûõ ïàðàìåòðîâ;
Ïðîâåðêè ãðàíè÷íûõ çíà÷åíèé äëÿ áèçíåñ-ëîãèêè ïðèëîæåíèÿ;
Ïðîâåðêè ãðàíè÷íûõ çíà÷åíèé äëÿ òèïîâ äàííûõ;
Ïðîâåðêè êîððåêòíîñòè òèïîâ äàííûõ äëÿ âñåõ âèäîâ ïàðàìåòðîâ;
Ïðîâåðêè íåêîððåêòíûõ çíà÷åíèé äëÿ âñåõ âèäîâ ïàðàìåòðîâ;
Ïðîâåðêè âñåõ ñîñòàâëÿþùèõ çàïðîñà (çàãîëîâêè, òåëî, êîä îòâåòà, âðåìÿ âûïîëíåíèÿ);
Ïîçèòèâíûå ñöåíàðèè ïðîâåðêè áèçíåñ-ëîãèêè ïðèëîæåíèÿ;
Íåãàòèâíûå ñöåíàðèè ïðîâåðêè áèçíåñ-ëîãèêè ïðèëîæåíèÿ.

Îñòàâëÿòü çàÿâêè ìîãóò òîëüêî àâòîðèçîâàííûå ïîëüçîâàòåëè.
Èñïîëíèòåëü ïî ýòîìó çàäàíèþ âûáðàí.
Ñäåëàþ ïî âàøåìó òç íà fastapi
Çäðàâñòâóéòå.
ß ïîìîãó ñ ðàçðàáîòêîé òåñò-êåéñîâ äëÿ API PetFriends íà îñíîâå äîêóìåíòàöèè Swagger. Ó÷èòûâàÿ îáúåì çàäà÷è è òðåáîâàíèÿ, ÿ ðàçîáüþ åå íà ÷àñòè, ÷òîáû ïðåäîñòàâèòü ñòðóêòóðèðîâàííûé è ïîëåçíûé ðåçóëüòàò.

Âàæíî: ß áóäó ïðèâîäèòü ïðèìåðû äëÿ êîíêðåòíûõ ìåòîäîâ API, ÷òîáû Âû ïîíèìàëè ñòðóêòóðó è ïîäõîä. Âàì íóæíî áóäåò àäàïòèðîâàòü ýòè ïðèìåðû äëÿ âñåõ îñòàëüíûõ ìåòîäîâ, ñëåäóÿ òîé æå ëîãèêå.


Ñòðóêòóðà òåñò-êåéñà (ïðèìåð):

Òåñò-êåéñ ID: PF-API-001 (Ïðèìåð)
Íàçâàíèå: Ïîëó÷åíèå API key áåç ïàðàìåòðîâ
Îïèñàíèå: Ïðîâåðêà ïîëó÷åíèÿ API key ïðè îòïðàâêå çàïðîñà áåç ïàðàìåòðîâ.
Ìåòîä API: /api/key
Òèï çàïðîñà: GET
Ïðåäâàðèòåëüíûå óñëîâèÿ: Îòñóòñòâóþò.
Øàãè:
1. Îòïðàâèòü GET çàïðîñ íà /api/key áåç ïàðàìåòðîâ.
Îæèäàåìûé ðåçóëüòàò:
* Êîä îòâåòà: 200 OK
* Òåëî îòâåòà: JSON ñ êëþ÷îì 'status' = '200' è 'key' (ñòðîêà, íå ïóñòàÿ).
* Çàãîëîâêè: Content-Type: application/json; charset=utf-8
* Âðåìÿ âûïîëíåíèÿ: (Óêàæèòå ïðèåìëåìîå âðåìÿ, íàïðèìåð, < 500 ìñ)
Êðèòåðèè óñïåøíîñòè: Âñå îæèäàåìûå ðåçóëüòàòû ñîîòâåòñòâóþò ôàêòè÷åñêèì.

Ðàçáåðåì ïðèìåðû äëÿ êàæäîãî ìåòîäà API, ïðåäñòàâëåííîãî â äîêóìåíòàöèè Swagger:

1. /api/key (GET): Ïîëó÷åíèå API key

PF-API-KEY-001: Ïîëó÷åíèå API key áåç ïàðàìåòðîâ (Ïîçèòèâíûé)
Îïèñàíèå: Ïðîâåðêà óñïåøíîãî ïîëó÷åíèÿ API key ïðè îòïðàâêå çàïðîñà áåç ïàðàìåòðîâ.
Øàãè: Îòïðàâèòü GET çàïðîñ íà /api/key áåç ïàðàìåòðîâ.
Îæèäàåìûé ðåçóëüòàò:
Êîä îòâåòà: 200
Òåëî îòâåòà: {"status": 200, "key": "..."} (ãäå "…" - ñãåíåðèðîâàííûé API key)
Ïðîâåðêà òèïîâ äàííûõ: status - integer, key - string.
key íå äîëæåí áûòü ïóñòûì.

PF-API-KEY-002: Ïðîâåðêà çàãîëîâêîâ (Ïîçèòèâíûé)
Îïèñàíèå: Ïðîâåðêà íàëè÷èÿ è êîððåêòíîñòè çàãîëîâêîâ â îòâåòå.
Øàãè: Îòïðàâèòü GET çàïðîñ íà /api/key áåç ïàðàìåòðîâ.
Îæèäàåìûé ðåçóëüòàò:............


( Ïðîäîëæåíèå ñëåäóåò )
----------------------------------------------------------------------------------------------------------------------------------------------------

Ïîäòâåðäèòå çàêàç.
Äîáðûé äåíü,

Ãîòîâà ïðåäëîæèòü ñâîè óñëóãè. Çàêîí÷èëà êóðñû Skillbox, íàðàáàòûâàþ ïîðòôîëèî.

Ñ óäîâîëüñòâèåì íà÷íó ðàáîòó.

Ñïàñèáî

Ïî÷òà: avarguzova@yadenx.ru
Òåëåãðàìì: @varguzonok
Íèêèòà Ðîìàí÷åíêî
Îñíîâíàÿ ñïåöèàëèçàöèÿ: Âåá-ðàçðàáîòêà è Ïðîäóêòîâûé äèçàéí
Çäðàâñòâóéòå!

Ìåíÿ çàèíòåðåñîâàë âàø ïðîåêò ïî íàïèñàíèþ òåñò-êåéñîâ äëÿ API íà îñíîâå äîêóìåíòàöèè â Swagger.

Î ñåáå:

Èìåþ îïûò ðàáîòû ñ REST API, òåñòèðîâàíèåì è Swagger.

Çàíèìàþñü íàïèñàíèåì òåñò-êåéñîâ, âêëþ÷àÿ ïðîâåðêó êîððåêòíîñòè ïàðàìåòðîâ, ãðàíè÷íûõ çíà÷åíèé, áèçíåñ-ëîãèêè è áåçîïàñíîñòè API.

Ðàáîòàþ ñ ðàçëè÷íûìè èíñòðóìåíòàìè äëÿ òåñòèðîâàíèÿ API, òàêèìè êàê Postman, JMeter, pytest.


Êàê ïëàíèðóþ âûïîëíèòü çàäà÷ó:

Ïðîàíàëèçèðóþ äîêóìåíòàöèþ Swagger, ðàçáåðó âñå ìåòîäû API.

Ðàçðàáîòàþ òåñò-êåéñû, âêëþ÷àÿ ïîçèòèâíûå è íåãàòèâíûå ñöåíàðèè, òåñòû ãðàíè÷íûõ çíà÷åíèé è òèïèçàöèè äàííûõ.

Ïîäãîòîâëþ òåñò-êåéñû â óäîáíîì ôîðìàòå (íàïðèìåð, Excel, Google Sheets èëè TestRail).


Ñðîêè è ñòîèìîñòü:

Îðèåíòèðîâî÷íîå âðåìÿ âûïîëíåíèÿ — 2-3 äíÿ.

Ñòîèìîñòü ðàáîòû — îò 5 000 ðóáëåé, â çàâèñèìîñòè îò îáúåìà ìåòîäîâ API.


Áóäó ðàä îáñóäèòü äåòàëè ïðîåêòà! Ãîòîâ ïðèñòóïèòü ê ðàáîòå.

Ñïàñèáî, æäó âàøåãî îòâåòà!
Çäðàâñòâóéòå!

Áëàãîäàðèì âàñ çà ïðåäîñòàâëåííóþ äîêóìåíòàöèþ ïî API. Ìû ãîòîâû ïðåäëîæèòü óñëóãè ïî íàïèñàíèþ òåñò-êåéñîâ äëÿ êàæäîãî ìåòîäà. Íàøè òåñòû áóäóò âêëþ÷àòü ñëåäóþùèå ïðîâåðêè:

Ïðîâåðêè áåç ïàðàìåòðîâ — òåñòèðîâàíèå ìåòîäîâ áåç îáÿçàòåëüíûõ è îïöèîíàëüíûõ ïàðàìåòðîâ.
Ïðîâåðêè îáÿçàòåëüíûõ ïàðàìåòðîâ — ïðîâåðêà êîððåêòíîñòè îáðàáîòêè îáÿçàòåëüíûõ ïàðàìåòðîâ.
Ïðîâåðêè îïöèîíàëüíûõ ïàðàìåòðîâ — òåñòèðîâàíèå ìåòîäà ñ îïöèîíàëüíûìè ïàðàìåòðàìè è èõ âëèÿíèåì íà ïîâåäåíèå.
Ïðîâåðêè ãðàíè÷íûõ çíà÷åíèé äëÿ áèçíåñ-ëîãèêè ïðèëîæåíèÿ — àíàëèç ãðàíè÷íûõ çíà÷åíèé, îïðåäåëÿþùèõ êîððåêòíîñòü áèçíåñ-ëîãèêè.
Ïðîâåðêè ãðàíè÷íûõ çíà÷åíèé äëÿ òèïîâ äàííûõ — ïðîâåðêà êîððåêòíîñòè îáðàáîòêè ìèíèìàëüíûõ è ìàêñèìàëüíûõ çíà÷åíèé òèïîâ äàííûõ.
Ïðîâåðêè êîððåêòíîñòè òèïîâ äàííûõ äëÿ âñåõ âèäîâ ïàðàìåòðîâ — òåñòèðîâàíèå âñåõ âîçìîæíûõ òèïîâ äàííûõ (ñòðîêè, ÷èñëà, áóëåâû çíà÷åíèÿ è ò.ä.).
Ïðîâåðêè íåêîððåêòíûõ çíà÷åíèé äëÿ âñåõ âèäîâ ïàðàìåòðîâ — ïðîâåðêà ðàáîòû ìåòîäîâ ñ íåêîððåêòíûìè çíà÷åíèÿìè.
Ïðîâåðêè âñåõ ñîñòàâëÿþùèõ çàïðîñà — àíàëèç çàãîëîâêîâ, òåëà çàïðîñà, êîäîâ îòâåòà è âðåìåíè âûïîëíåíèÿ.
Ïîçèòèâíûå ñöåíàðèè ïðîâåðêè áèçíåñ-ëîãèêè ïðèëîæåíèÿ — òåñòèðîâàíèå ìåòîäîâ â ðàìêàõ íîðìàëüíûõ óñëîâèé èñïîëüçîâàíèÿ.
Íåãàòèâíûå ñöåíàðèè ïðîâåðêè áèçíåñ-ëîãèêè ïðèëîæåíèÿ — ïðîâåðêà îáðàáîòêè îøèáîê è íåêîððåêòíûõ çàïðîñîâ.
Ìû ãîòîâû àäàïòèðîâàòü òåñò-êåéñû â ñîîòâåòñòâèè ñ âàøèìè òðåáîâàíèÿìè è ïîæåëàíèÿìè, ÷òîáû îáåñïå÷èòü ìàêñèìàëüíî êà÷åñòâåííóþ ïðîâåðêó âñåõ àñïåêòîâ ðàáîòû API. Ìû ãàðàíòèðóåì âûïîëíåíèå òåñòîâ ñ âûñîêîé ñòåïåíüþ ïîêðûòèÿ, ÷òî îáåñïå÷èò íàäåæíîñòü è ñòàáèëüíîñòü âàøåãî ïðèëîæåíèÿ.

Áóäåì ðàäû îáñóäèòü äåòàëè è íà÷àòü ñîòðóäíè÷åñòâî!

Ñ óâàæåíèåì,ñòóäèÿ ðàçðàáîòêè FunCus.

https://funcus.ru
telegram: https://t.me/funcus
09:21 18.03.25
Êàêèå îñíîâíûå ôóíêöèîíàëüíûå âîçìîæíîñòè âû õîòèòå ïðîòåñòèðîâàòü â API?
Åñòü ëè ó âàñ ïðåäïî÷òåíèÿ ïî èíñòðóìåíòàì äëÿ àâòîìàòèçàöèè òåñòèðîâàíèÿ?
Íóæíî ëè íàì âûïîëíèòü íàãðóçî÷íûå òåñòû, ÷òîáû ïðîâåðèòü ïðîèçâîäèòåëüíîñòü ïðèëîæåíèÿ ïîä âûñîêîé íàãðóçêîé?
Çäðàâñòâóéòå, ãîòîâ ïîìî÷ü ñ ñîçäàíèåì òåñò-êåéñîâ.

Ñîñòàâèì âñå òèïû ïðîâåðîê ìåòîäîâ, ÷òî óêàçàíû òóò â çàäàíèè. Îò âàñ õîòåëîñü áû óçíàòü ñòåê òåõíîëîãèé êîòîðûé áóäåò èñïîëüçîâàòü â äàííîì çàäàíèè.
Çäðàâñòâóéòå, Åëèçàâåòà, ãîòîâ îáñóäèòü äåòàëè ïðîåêòà. Îïûò åñòü!

Æäó Âàøåãî îòâåòà!
---------------------------------------
Telegram - @ab_damirr

WhatsApp- +79172088852

Ïî÷òà - freelancedamir@yandex.ru

Ïðèìåðû ìîèõ ðàáîò

IT è Ðàçðàáîòêà
Äèçàéí, Ìîíòàæ è 3D
Êîïèðàéòèíã, Ðåðàéòèíã è Ïåðåâîäû

Îñòàâëÿòü çàÿâêè ìîãóò òîëüêî àâòîðèçîâàííûå ïîëüçîâàòåëè.