از موارد زیر استفاده کنید API روشهایی برای درخواست جزئیات در مورد اجرای تست و ایجاد یا تغییر اجرای تست.
get_run #
اجرای تست موجود را برمیگرداند. لطفا ببینید get_tests برای لیست تست های موجود در این اجرا.
GET index.php?/api/v2/get_run/{run_id}
پارامترها #
| نام | تایپ کنید | مورد نیاز | توضیحات |
|---|---|---|---|
| run_id | عدد صحیح | درست است | شناسه اجرای تست |
درخواست نمونه:
# Get the test run with an ID of 42
GET index.php?/api/v2/get_run/42
محتوای پاسخگویی #
پاسخ نمونه:
{
"id": 9942,
"name": "Test Run Name",
"description": null,
"suite_id": 10,
"project_id": 3,
"plan_id": null,
"milestone_id": null,
"assignedto_id": null,
"include_all": false,
"is_completed": false,
"completed_on": null,
"is_archived": false,
"archived_on": null,
"config": null,
"config_ids": [],
"passed_count": 0,
"blocked_count": 0,
"untested_count": 46,
"retest_count": 0,
"failed_count": 0,
"created_by": 376,
"created_on": 1775495967,
"updated_on": 1775495967,
"refs": null,
"url": "https://test.testrail.io/index.php?/runs/view/123",
"start_on": null,
"due_on": null,
"dynamic_filters": {
"mode": "1",
"filters": {
"cases:custom_automationmark": { "mode": "1", "values": ["13"] },
"cases:created_by": { "values": ["409", "376"] }
}
},
"custom_status1_count": 0,
"custom_status2_count": 0,
"custom_status3_count": 0,
"custom_status4_count": 0,
"custom_status5_count": 0,
"custom_status6_count": 0,
"custom_status7_count": 0,
"dataset_id": null
}
فیلدهای سیستم زیر همیشه در پاسخ گنجانده شده است:
| نام | تایپ کنید | توضیحات |
|---|---|---|
| assignedto_id | عدد صحیح | شناسه کاربری که کل اجرای تست به آن اختصاص داده شده است |
| blocked_count | عدد صحیح | تعداد تستها در اجرای تست بهعنوان مسدود شده علامتگذاری شد |
| تکمیل_روشن | مهر زمانی | تاریخ/زمانی که اجرای تست بسته شد (به عنوان مهر زمانی یونیکس) |
| پیکربندی | رشته | پیکربندی اجرای تست به عنوان یک رشته (اگر بخشی از یک طرح آزمایشی باشد) |
| config_ids | آرایه | آرایه شناسههای پیکربندی اجرای تست (اگر بخشی از طرح آزمایشی باشد) |
| ایجاد_توسط | عدد صحیح | شناسه کاربری که اجرای تست را ایجاد کرده است |
| ایجاد_روشن | مهر زمانی | تاریخ/زمانی که اجرای تست ایجاد شد (به عنوان مهر زمانی یونیکس) |
| سفارشی_وضعیت؟_count | عدد صحیح | تعداد تست ها در اجرای تست با وضعیت سفارشی مربوطه |
| توضیحات | رشته | شرح اجرای تست |
| شکست_شمار | عدد صحیح | تعداد آزمایشها در اجرای تست بهعنوان ناموفق علامتگذاری شد |
| شناسه | عدد صحیح | شناسه منحصر به فرد اجرای تست |
| شامل_همه | بولی | اگر اجرای تست شامل همه تستکیسها باشد درست است و در غیر این صورت نادرست است |
| is_completed | بولی | اگر اجرای تست بسته بود درست است و در غیر این صورت نادرست است |
| milestone_id | عدد صحیح | شناسه نقطه عطفی که این اجرای تست به آن تعلق دارد |
| plan_id | عدد صحیح | شناسه طرح آزمایشی این اجرای تست به آن تعلق دارد |
| نام | رشته | نام اجرای تست |
| گذشت_شمار | عدد صحیح | تعداد آزمونها در اجرای تست بهعنوان قبولی علامتگذاری شده است |
| پروژه_id | عدد صحیح | شناسه پروژه ای که این اجرای تست به آن تعلق دارد |
| retest_count | عدد صحیح | تعداد تست ها در اجرای تست به عنوان آزمون مجدد علامت گذاری شده است |
| suite_id | عدد صحیح | شناسه مجموعه آزمایشی این اجرای تست از آن مشتق شده است |
| تعداد_تست نشده | عدد صحیح | تعداد آزمایشها در اجرای تست بهعنوان آزمایشنشده علامتگذاری شد |
| updated_on | مهر زمانی | تاریخ/زمان بهروزرسانی اجرای تست – به TestRail ۶.۵.۲ یا جدیدتر نیاز دارد. |
| آدرس اینترنتی | رشته | آدرس/URL آزمون اجرا شده در رابط کاربری |
| مراجع | رشته | فهرستی از مراجع/شرایط جدا شده با کاما |
| start_on | مهر زمانی | تاریخ شروع اجرای تست به عنوان مهر زمانی یونیکس. |
| به دلیل | مهر زمانی | تاریخ پایان اجرای تست به عنوان مهر زمانی یونیکس. |
کدهای پاسخگویی #
| کد وضعیت | توضیحات |
|---|---|
| 200 | موفقیت آمیز (اجرای تست به عنوان بخشی از پاسخ برگردانده می شود) |
| 400 | اجرای تست نامعتبر یا ناشناخته |
| 403 | عدم دسترسی به پروژه |
| 429 | فقط TestRail Cloud– درخواست های بسیار زیاد (نگاه کنید به محدودیت نرخ API) |
get_runs #
لیستی از اجرای تست یک پروژه را برمی گرداند. فقط اجراهای آزمایشی را برمی گرداند که بخشی از طرح آزمایشی نیستند (لطفاً ببینید برنامه های دریافتی/get_plan برای این).
GET index.php?/api/v2/get_runs/{project_id}
پارامترها #
| نام | تایپ کنید | مورد نیاز | توضیحات |
|---|---|---|---|
| پروژه_id | عدد صحیح | درست است | شناسه پروژه |
این روش تا ۲۵۰ ورودی را در آرایه پاسخ برمی گرداند. برای بازیابی ورودیهای اضافی، میتوانید با استفاده از فیلتر افست که در بخش درخواست فیلترها در زیر توضیح داده شده است، درخواستهای اضافی انجام دهید.
درخواست فیلتر #
فیلترهای زیر را می توان با استفاده از پارامترهای پرس و جو در URL درخواست اعمال کرد:
| نام | تایپ کنید | توضیحات |
|---|---|---|
| ایجاد_بعد | مهر زمانی | فقط اجرای تست ایجاد شده پس از این تاریخ (به عنوان مهر زمانی یونیکس) را برمی گرداند. |
| ایجاد شده_قبل | مهر زمانی | فقط اجراهای آزمایشی ایجاد شده قبل از این تاریخ را برمی گرداند (به عنوان مهر زمانی یونیکس) |
| ایجاد_توسط | عدد صحیح | فهرستی از سازندگان (شناسههای کاربری) جدا شده با کاما برای فیلتر کردن |
| include_plan_runs | بولی | ۰ برای بازگشت فقط به اجراهای مستقل. ۱ برای برگرداندن اجرای تست متعلق به برنامه های آزمایشی، از جمله شناسه طرح آزمایشی. |
| is_completed | بولی | ۰ برای برگرداندن فقط اجرای تست فعال. ۱ برای برگرداندن اجرای تست کامل شده (اگر فیلتر تنظیم نشده باشد پیش فرض). |
| حد / جبران | عدد صحیح | نتیجه را به محدود کردن اجرای تست محدود کنید. برای رد کردن رکوردها از افست استفاده کنید |
| milestone_id | عدد صحیح (فهرست) | فهرستی از شناسههای نقطه عطف جدا شده با کاما برای فیلتر کردن |
| مراجع | رشته | یک شناسه مرجع واحد (به عنوان مثال TR-a، ۴۲۹۱، و غیره) |
| suite_id | عدد صحیح (فهرست) | فهرستی از شناسههای مجموعه آزمایشی جدا شده با کاما برای فیلتر کردن |
# All active test runs for project with ID 1 created by user with ID 1 or 2
GET index.php?/api/v2/get_runs/1&is_completed=0&created_by=1,2
{
"offset": 0,
"limit": 2,
"size": 2,
"_links": {
"next": "/api/v2/get_runs/3&limit=2&offset=2",
"prev": null
},
"runs": [
{
"id": 9942,
"name": "Test Run Name",
"description": null,
"suite_id": 10,
"project_id": 3,
"plan_id": null,
"milestone_id": null,
"assignedto_id": null,
"include_all": false,
"is_completed": false,
"completed_on": null,
"is_archived": false,
"archived_on": null,
"config": null,
"config_ids": [],
"passed_count": 0,
"blocked_count": 0,
"untested_count": 46,
"retest_count": 0,
"failed_count": 0,
"created_by": 376,
"created_on": 1775495967,
"updated_on": 1775495967,
"refs": null,
"url": "https://test.testrail.io/index.php?/runs/view/123",
"start_on": null,
"due_on": null,
"dynamic_filters": {
"mode": "1",
"filters": {
"cases:custom_automationmark": { "mode": "1", "values": ["13"] },
"cases:created_by": { "values": ["409", "376"] }
}
},
"custom_status1_count": 0,
"custom_status2_count": 0,
"custom_status3_count": 0,
"custom_status4_count": 0,
"custom_status5_count": 0,
"custom_status6_count": 0,
"custom_status7_count": 0,
"dataset_id": null
}
// ... more runs
]
}
کدهای پاسخگویی #
| کد وضعیت | توضیحات |
|---|---|
| 200 | موفقیت آمیز (اجرای تست به عنوان بخشی از پاسخ برگردانده می شود) |
| 400 | پروژه نامعتبر یا ناشناخته |
| 403 | عدم دسترسی به پروژه |
| 429 | فقط TestRail Cloud– درخواست های بسیار زیاد (نگاه کنید به محدودیت نرخ API) |
add_run #
یک اجرای تست جدید ایجاد می کند.
POST index.php?/api/v2/add_run/{project_id}
پارامترها #
| نام | تایپ کنید | مورد نیاز | توضیحات |
|---|---|---|---|
| پروژه_id | عدد صحیح | درست است | شناسه پروژه تستکیس باید به آن اضافه شود |
| فیلترهای_دینامیک | شی | نادرست | یک بار فیلتر پویا که برای انتخاب موارد موجود در اجرای تست استفاده می شود. محموله از همان رفتار فیلتر انتخاب رابط کاربری TestRail پیروی می کند. |
درخواست بدن #
فیلترهای زیر را می توان در پیام بدنه درخواست اعمال کرد:
| نام | تایپ کنید | توضیحات |
|---|---|---|
| suite_id | عدد صحیح | شناسه مجموعه آزمایشی برای اجرای تست (در صورتی که پروژه در حالت تک مجموعه کار می کند، اختیاری است، در غیر این صورت لازم است) |
| نام | رشته | نام اجرای تست |
| توضیحات | رشته | شرح اجرای تست |
| milestone_id | عدد صحیح | شناسه نقطه عطف برای پیوند به اجرای تست |
| assignedto_id | عدد صحیح | شناسه کاربری که اجرای تست باید به آن اختصاص داده شود |
| شامل_همه | بولی | درست برای شامل تمام تستکیسها مجموعه آزمایشی و نادرست برای انتخاب مورد سفارشی (پیشفرض: درست) |
| case_ids | آرایه | آرایه ای از شناسه های پرونده برای انتخاب پرونده سفارشی |
| مراجع | رشته | فهرست منابع/الزامات جدا شده با کاما – به TestRail ۶.۱ یا بالاتر نیاز دارد |
| start_on | مهر زمانی | تاریخ شروع اجرای تست به عنوان مهر زمانی یونیکس. |
| به دلیل | مهر زمانی | تاریخ پایان اجرای تست به عنوان مهر زمانی یونیکس. |
درخواست نمونه #
همچنین مثال زیر را ببینید که نشان می دهد چگونه یک اجرای تست جدید از جمله انتخاب تستکیس سفارشی ایجاد کنید:
{
"suite_id": 1,
"name": "This is a new test run",
"assignedto_id": 5,
"refs": "SAN-1, SAN-2",
"include_all": false,
"case_ids": [1, 2, 3, 4, 7, 8]
}
درخواست مثال با فیلترهای پویا #
همچنین مثال زیر را ببینید که نحوه ایجاد یک اجرای تست جدید را نشان می دهد فیلترهای دینامیک:
{
"suite_id": 1,
"name": "API Dynamic Filter Run",
"include_all": false,
"case_ids": [],
"dynamic_filters": {
"mode": "1",
"filters": {
"cases:priority_id": {
"values": [2]
},
"cases:title": {
"mode": "2",
"filters": [
{
"op": 5,
"value": "Login"
}
]
}
}
}
}
قوانین تقدم #
چه زمانی dynamic_filters، case_ids، و include_all با هم استفاده می شوند، TestRail قوانین اولویت زیر را اعمال می کند:
| شامل_همه | case_ids | فیلترهای_دینامیک | نتیجه |
|---|---|---|---|
| نادرست | [] |
حاضر شود | استفاده کنید dynamic_filters
|
| ارائه نشده است | ارائه نشده است | حاضر شود | استفاده کنید dynamic_filters
|
| درست است | [1,2,3] |
حاضر شود | استفاده کنید case_ids; نادیده گرفتن dynamic_filters
|
| نادرست | [1,2,3] |
حاضر شود | استفاده کنید case_ids; نادیده گرفتن dynamic_filters
|
| درست است | [] |
حاضر شود | استفاده کنید include_all: true; نادیده گرفتن dynamic_filters
|
| نادرست | ارائه نشده است | ارائه نشده است | استفاده کنید include_all: false
|
| ارائه نشده است | ارائه نشده است | ارائه نشده است | استفاده کنید include_all: true
|
در عمل: dynamic_filters تنها زمانی موثر است که include_all است false یا ارائه نشده است، و case_ids خالی است یا ارائه نشده است.
محتوای پاسخگویی #
در صورت موفقیت آمیز بودن، این روش اجرای تست جدید را با استفاده از همان قالب پاسخ بازمی گرداند get_run.
کدهای پاسخگویی #
| کد وضعیت | توضیحات |
|---|---|
| 200 | موفقیت آمیز (اجرای تست ایجاد شد و به عنوان بخشی از پاسخ برگردانده شد) |
| 400 | پروژه نامعتبر یا ناشناخته |
| 403 | بدون مجوز برای افزودن اجرای تست یا عدم دسترسی به پروژه |
| 429 | فقط TestRail Cloud– درخواست های بسیار زیاد (نگاه کنید به محدودیت نرخ API) |
update_run #
اجرای تست موجود را بهروزرسانی میکند (بهروزرسانیهای جزئی پشتیبانی میشوند، یعنی فقط میتوانید فیلدهای خاص را ارسال و بهروزرسانی کنید).
برای بهروزرسانی اجراهای آزمایشی در طرحهای آزمایشی، لطفاً ببینید API: plans.
POST index.php?/api/v2/update_run/{run_id}
پارامترها #
| نام | تایپ کنید | مورد نیاز | توضیحات |
|---|---|---|---|
| run_id | عدد صحیح | درست است | شناسه اجرای تست |
درخواست نمونه #
همچنین مثال زیر را ببینید که نحوه بهروزرسانی توضیحات و انتخاب تستکیس یک اجرای تست را نشان میدهد:
{
"description": "A description for the test run",
"include_all": true
}
مثال زیر یک اجرای تست را برای استفاده از انتخاب تستکیس دستی به روز می کند:
{
"include_all": false,
"case_ids": [1, 2, 3, 5, 8]
}
محتوای پاسخگویی #
در صورت موفقیت آمیز بودن، این روش اجرای تست به روز شده را با استفاده از همان قالب پاسخ باز می گرداند get_run.
کدهای پاسخگویی #
| کد وضعیت | توضیحات |
|---|---|
| 200 | موفقیت آمیز (اجرای تست به روز شد و به عنوان بخشی از پاسخ برگردانده شد) |
| 400 | اجرای تست نامعتبر یا ناشناخته |
| 403 | بدون مجوز برای تغییر اجرای تست یا عدم دسترسی به پروژه |
| 429 | فقط TestRail Cloud– درخواست های بسیار زیاد (نگاه کنید به محدودیت نرخ API) |
close_run #
#
بستن اجرای تست قابل بازگرداندن نیست.
اجرای تست موجود را میبندد و آزمایشهای آن را بایگانی میکند & نتایج
POST index.php?/api/v2/close_run/{run_id}
پارامترها #
| نام | تایپ کنید | مورد نیاز | توضیحات |
|---|---|---|---|
| run_id | عدد صحیح | درست است | شناسه اجرای تست |
محتوای پاسخگویی #
در صورت موفقیت آمیز بودن، این روش اجرای تست بسته را با استفاده از همان قالب پاسخ باز می گرداند get_run.
کدهای پاسخگویی #
| کد وضعیت | توضیحات |
|---|---|
| 200 | موفقیت آمیز (اجرای تست بسته شد (بایگانی شد) و به عنوان بخشی از پاسخ بازگردانده شد) |
| 400 | اجرای تست نامعتبر یا ناشناخته |
| 403 | هیچ مجوزی برای بستن اجرای تست یا عدم دسترسی به پروژه وجود دارد |
| 429 | فقط TestRail Cloud– درخواست های بسیار زیاد (نگاه کنید به محدودیت نرخ API) |
delete_run #
#
حذف اجرای تست قابل لغو نیست و همچنین همه آزمایشها را برای همیشه حذف میکند & نتایج اجرای تست
اجرای تست موجود را حذف می کند.
برای حذف یک اجرای تست در یک طرح آزمایشی، لطفاً ببینید API: Plans.
POST index.php?/api/v2/delete_run/{run_id}
پارامترها #
| نام | تایپ کنید | مورد نیاز | توضیحات |
|---|---|---|---|
| run_id | عدد صحیح | درست است | شناسه اجرای تست |
پارامتر نرم #
#
حذف پارامتر نرمافزار یا ارسال soft=۰، اجرای تست و آزمایشهای آن را حذف میکند.
اگر soft=1، داده های مربوط به تعداد تست های تحت تأثیر را برمی گرداند.
از جمله soft=1 در واقع موجودیت را حذف نخواهد کرد.
کدهای پاسخگویی #
| کد وضعیت | توضیحات |
|---|---|
| 200 | موفقیت (آزمایش و تمام آزمایشات آن & نتایج حذف شد) |
| 400 | اجرای تست نامعتبر یا ناشناخته |
| 403 | بدون مجوز برای حذف اجراهای آزمایشی یا عدم دسترسی به پروژه |
| 429 | فقط TestRail Cloud– درخواست های بسیار زیاد (نگاه کنید به محدودیت نرخ API) |

