ATP - ورود کاربر (POST /api/v1/auth/login/)
Endpoint
POST /api/v1/auth/login/
هدف آزمون
احراز هویت و صدور access/refresh JWT.
شرایط آزمون
- سرویس core-api در حال اجرا باشد
- نیازی به احراز هویت نیست
فرآیند آزمون
- ثبتنام کاربر تست (در صورت نیاز)
- POST login با email/password
- ذخیره access و refresh token
- استفاده از access در هدر Authorization: Bearer
معرفی ویژگی
این endpoint عملیات «ورود کاربر» را در API Patent Genie انجام میدهد.
- ورودی معتبر: اعتبارسنجی در مرز API
- پاسخ استاندارد: قالب JSON یکسان با سایر endpointها
- کنترل دسترسی: مطابق policy ماژول مربوطه
سناریوی آزمون
سناریو 1: مسیر موفق
- ارسال
POST /api/v1/auth/login/ - دریافت پاسخ موفق
- بررسی ساختار پاسخ
سناریو 2: خطا - درخواست نامعتبر
- ارسال درخواست با داده یا شناسه نامعتبر
- دریافت کد خطای 4xx
- بررسی پیام خطای استاندارد API
سناریو 3: ورود موفق
- register سپس login
- 200
- بررسی access و refresh غیرخالی
سناریو 4: رمز اشتباه
- login با password نادرست
- 401
- بررسی عدم برگرداندن token
قالب API
| مولفه | نوع | نوع داده | اجباری | توضیحات |
|---|---|---|---|---|
| Body | string | بله | ایمیل ثبتشده | |
| password | Body | string | بله | رمز عبور |
Swagger
post:
summary: ورود کاربر
responses:
201:
description: منبع ایجاد شد
400:
description: داده ورودی نامعتبر
401:
description: احراز هویت نامعتبر
نمونه ورودی
curl -X POST "http://localhost:8000/api/v1/auth/login/" \
-H "Content-Type: application/json"
نمونه خروجی
{
"success": true,
"data": {
"access": "eyJ...",
"refresh": "eyJ...",
"user": { "id": "...", "email": "user@example.com", "full_name": "Example User" }
}
}
Status Codes
- 200: ورود موفق
- 401: credential نامعتبر
نتیجه مورد انتظار
در صورت موفقیت، پاسخ JSON استاندارد با کد وضعیت مناسب برای POST برگردانده میشود.
روال صحتسنجی
- بررسی کد وضعیت HTTP
- بررسی فیلد success در بدنه
- بررسی عدم افشای داده حساس
توضیحات
- پیام خطای 401 generic است (افشای نکردن وجود email)
- refresh برای POST /auth/refresh/