#
این مقاله درباره یکپارچهسازی با GitLab Issues است. اگر دنبال اطلاعات مربوط به integrationهای CI/CD هستید، مستندات Integrating with GitLab CI/CD را ببینید.
TestRail با GitLab یکپارچه میشود تا تیم شما بتواند issueها را بین TestRail و GitLab لینک کند، ببیند، اضافه کند و ارسال کند؛ چه بهعنوان bug/defect ، requirement/reference یا هر دو. یکپارچهسازی TestRail با GitLab از کاربردهای زیر پشتیبانی میکند:
- لینک کردن test caseها به requirements
- شروع ساخت requirements از داخل TestRail
- مشاهده requirements در TestRail
- لینک کردن defects به نتایج تست
- ثبت defectهای جدید در GitLab
- ثبت defectهای جدید از داخل TestRail
- مشاهده defects در TestRail
لازم نیست از همه گزینههای integration که در فهرست آمده استفاده کنید؛ میتوانید این integration را با ابزارهای دیگر ترکیب کنید. پیکربندی integration معمولاً فقط چند دقیقه زمان میبرد. این راهنما توضیح میدهد چطور integration را پیکربندی کنید و این قابلیت چطور کار میکند.
لینک کردن test caseها به requirements #
هنگام تعریف test coverage، موقع ایجاد یا ویرایش test caseها، کافی است یک یا چند Issue ID را، که با کاما از هم جدا شدهاند، در فیلد References وارد کنید.

مقدار References که در test caseهای خود تنظیم میکنید، به لینک مستقیم به issueهای GitLab تبدیل میشود.

شروع ساخت requirements از داخل TestRail #
issueهای GitLab میتوانند منبع requirements باشند و به همین دلیل referenceهای مفیدی برای test caseها محسوب میشوند. TestRail یک قابلیت کاربردی به نام Add در نمای ویرایشگر test case دارد که شما را مستقیم به صفحه issueهای GitLab میبرد. این قابلیت روند ساخت requirementهای جدیدی را که میخواهید به test caseهای خود مرتبط کنید سریعتر میکند. توجه داشته باشید که بعد از ایجاد work item جدید، باید ID آن را کپی کرده و در فیلد References قرار دهید تا traceability بهدرستی حفظ شود.

پیکربندی Reference Add URL #
برای شروع ساخت requirements جدید از داخل TestRail، باید مقدار GitLab Reference Add URL را در TestRail طبق مراحل زیر پیکربندی کنید.
- به صفحه Admin بروید، گزینه Integration را برای پیکربندی سراسری انتخاب کنید، یا Projects برای یک project مشخص، و تب References را باز کنید
- مقدار Reference Add URL را با الگوی زیر وارد کنید
https://<GitLab_Space_URL>/<project>/-/issues/new - روی Save Settings کلیک کنید

مشاهده نیازمندیها در TestRail #
TestRail میتواند اطلاعات تکمیلی را از IDهایی که در فیلد References موجودیتهای TestRail مثل test caseها، test runها و milestoneها وارد شدهاند، دریافت کند. کافی است نشانگر را روی لینکها ببرید تا یک پنجره اطلاعات بهروز را بدون نیاز به رفتن به GitLab نمایش دهد.

پیکربندی Reference Plugin #
برای مشاهده مستقیم نیازمندیها در TestRail، باید GitLab Reference Plugin را در TestRail طبق مراحل زیر پیکربندی کنید.
- یک User Variable برای GitLab Personal Access Token (PAT) ایجاد کنید
- به صفحه Admin بروید و Integration را برای پیکربندی سراسری انتخاب کنید، یا Projects را برای یک project مشخص انتخاب کنید، سپس تب References را باز کنید
- در فهرست کشویی Reference Plugin، نوع GitLab موردنظر خود را انتخاب کنید
- تنظیمات اتصال را در بخش [connection] پیکربندی کنید
- address: https://<GitLab_URL>/
- token: User Variable شما که میتوانید آن را در GitLab ایجاد کنید
- project_id: Project ID شما در GitLab. این Project ID در صفحه Project overview، زیر نام project نمایش داده میشود؛ همانطور که در اسکرینشات زیر میبینید
- روی Save Settings کلیک کنید

اتصال defectها به test resultها #
فیلد Defect View URL برای ساختن لینک به GitLab بر اساس Defect ID استفاده میشود؛ بنابراین میتوانید روی یک ID کلیک کنید تا issue مستقیماً در GitLab باز شود.
وقتی integration مربوط به Defect View URL را با GitLab Issues راهاندازی میکنید، میتوانید ID یک GitLab issue را در فیلد Defects یک test result وارد کنید. TestRail آن ID را بهصورت خودکار به یک لینک قابل کلیک تبدیل میکند تا issue را در GitLab ببینید. به این ترتیب تیم شما میتواند testها را به GitLab issues وصل کند و در TestRail گزارشهای defect و traceability بسازد.

پیکربندی Defect View URL #
برای اتصال defectها به test resultها در TestRail، طبق مراحل زیر GitLab Defect View URL را در TestRail پیکربندی کنید.
- به صفحه Admin بروید و Integration را برای پیکربندی سراسری انتخاب کنید یا Projects را برای یک project انتخاب کنید و تب Defects را باز کنید
- مقدار Defect View URL خود را با الگوی زیر وارد کنید
https://<GitLab_Space_URL>/<project>/-/issues/%id% - روی Save Settings کلیک کنید
نکته : حتماً <GitLab_Space_URL> و <project> را با repository واقعی و نام owner در GitLab که میخواهید با آن یکپارچه شوید جایگزین کنید.

ثبت defectهای جدید در GitLab #
TestRail برای گزارش defect از طریق رابط کاربری GitLab، مسیر سریعی در اختیار شما میگذارد. این کار را میتوانید از دو جای مختلف انجام دهید: از منوی Defects و از پنجره Add Test Result.
منوی Defects ، که در TestRail با عنوان Defect From Anywhere هم شناخته میشود، برای دسترسی سریع در بالای بیشتر صفحهها نمایش داده میشود.

پنجره Add Test Result لینک Add را کنار فیلد Defects نمایش میدهد تا وقتی test شما fail میشود، بتوانید سریع و راحت به GitLab بروید و یک defect ثبت کنید.

پیکربندی Defect Add URL #
برای اینکه بتوانید سریع به GitLab بروید و یک defect جدید بسازید، باید GitLab Defect URL را در TestRail طبق مراحل زیر پیکربندی کنید.
- به صفحه Admin بروید، گزینه Integration را برای پیکربندی سراسری انتخاب کنید یا Projects را برای یک project مشخص انتخاب کنید و تب Defects را باز کنید.
- Defect Add URL خود را با الگوی زیر وارد کنید.
https://<GitLab_Space_URL>/<project>/-/issues/new - روی Save Settings کلیک کنید.

نکته: مطمئن شوید <GitLab_Space_URL> و <project> را با نام واقعی repo و owner در GitLab موردنظر برای یکپارچهسازی جایگزین کردهاید.
ثبت defectهای جدید از TestRail #
برای سادهتر شدن گزارش defect، TestRail یک plugin آماده برای defectهای GitLab ارائه میکند. با این plugin میتوانید issueهای جدید را مستقیماً از داخل TestRail در GitLab ثبت کنید.
با استفاده از پنجره Push Defect ، میتوانید بهسرعت یک defect جدید همراه با title، description و هر فیلد اضافهای که GitLab پشتیبانی میکند بسازید. این فرایند، workflow مدیریت defect را روانتر میکند.

پنجره ثبت defect را میتوانید از دو بخش باز کنید: منوی Defects و پنجره Add Test Result.
منوی Defects ، که با نام قابلیت Defect From Anywhere در TestRail هم شناخته میشود، برای دسترسی سریع در بالای بیشتر صفحهها نمایش داده میشود.

پنجره Add Test Result لینک Push را کنار فیلد Defects نمایش میدهد تا هنگام ثبت test result بتوانید defect را سریع گزارش کنید.

پیکربندی Defect Plugin #
برای ارسال defect جدید بهصورت مستقیم از TestRail، باید GitLab Defect Plugin را در TestRail با دنبال کردن مراحل زیر پیکربندی کنید.
- به صفحه Admin بروید، Integration را برای پیکربندی سراسری یا Projects را برای یک project مشخص انتخاب کنید و تب References را باز کنید.
- GitLab موردنظر خود را در Defect Plugin drop-down list انتخاب کنید.
- تنظیمات اتصال را در [connection] بخش پیکربندی کنید.
- address: https://<GitLab_URL>/
- token: توکن شما personal access token که میتوانید آن را در GitLab ایجاد کنید
-
project_id: مقدار Project ID از GitLab. مقدار Project ID در صفحه Project overview، زیر نام project نمایش داده میشود؛ همانطور که در تصویر زیر میبینید

- روی Save Settings کلیک کنید

مشاهده defectها در TestRail #
کافی است نشانگر ماوس را روی لینکهای defect نگه دارید تا بدون رفتن به GitLab، یک پنجره آخرین اطلاعات را به شما نشان دهد. این لینکها هم مستقیماً در نتایج تست در دسترساند و هم در بخش Defects مربوط به test runها، test planها و milestoneها.

پیکربندی Defect Plugin #
برای ثبت defectهای جدید مستقیماً از TestRail، باید GitLab را پیکربندی کنید Defect Plugin در TestRail، طبق مراحل زیر.
- به صفحه Admin بروید و Integration را برای پیکربندی سراسری انتخاب کنید، یا Projects را برای یک project مشخص انتخاب کنید و تب References را باز کنید
- نوع GitLab موردنظر را از فهرست کشویی Reference Plugin انتخاب کنید
- تنظیمات اتصال را در بخش [connection] پیکربندی کنید
- address: https://<GitLab_URL>/
- token: مقدار personal access token که میتوانید آن را در GitLab ایجاد کنید
-
project_id: مقدار Project ID از GitLab. این Project ID در صفحه Project overview، زیر نام project نمایش داده میشود؛ همانطور که در تصویر زیر میبینید
- روی Save Settings کلیک کنید

همچنین میتوانید فیلدهایی را که هنگام نگهداشتن ماوس روی لینک نمایش داده میشوند سفارشی کنید. برای اطلاعات بیشتر درباره روش انجام این کار، به سفارشیسازی Requirement/Defect Plugins مراجعه کنید.
سفارشیسازیهای پیشرفته #
متغیرهای کاربر #
توصیه میکنیم هنگام تنظیم اطلاعات ورود برای هر integration، از User Variables استفاده کنید. با این کار میتوانید credentialهای عمومی را بدون افشای آنها وارد کنید و کاربران هم میتوانند برای کنترل دسترسی بهتر، credentialهای خودشان را در تنظیمات شخصی تعریف کنند. در ادامه نمونهای از تنظیم variableها در configuration را میبینید.
gitlab_token=%gitlab_token%
gitlab_project_id=%gitlab_project_id%

سفارشیسازی Requirement/Defect Plugins #
پلاگین GitLab برای کار با configuration استاندارد GitLab ساخته شده است. TestRail به شما اجازه میدهد فیلدهایی را که در Push dialog نمایش داده میشوند، و همینطور فیلدهایی را که هنگام نگهداشتن ماوس روی work item IDها ظاهر میشوند، هم برای requirementها و هم برای defectها سفارشی کنید. فیلدهای ازپیشتنظیمشده برای push و hover را میتوانید روی on یا off در بخشهای مربوط به [push.fields] و [hover.fields] تنظیم کنید. همچنین میتوانید ترتیب آنها را تغییر دهید تا همین ترتیب در UI هم اعمال شود.
#
بعضی فیلدها، مثل title، همیشه فعال هستند و چون TestRail یا GitLab همیشه به آنها نیاز دارد، ممکن است در این بخشها نمایش داده نشوند.
علاوه بر فعالسازی، غیرفعالسازی یا مرتبسازی دوباره فیلدها طبق توضیح بالا، میتوانید optionهای بیشتری را هم برای هر فیلد تغییر دهید. برای این کار، باید یک بخش برای آن فیلد تعریف کنید؛ برای مثال [push.field.description] و optionهای بیشتر را داخل همین بخش مشخص کنید.
[push.field.description]
label=Detailed Description
required=true
فهرست کامل optionهای موجود برای فیلدها و توضیح هرکدام را در ادامه ببینید:
| Option | توضیح |
|---|---|
label |
نام نمایشی فیلد را در Push Defect dialog مشخص میکند (برای custom fieldها الزامی است) |
size |
مشخص میکند که فیلد بهصورت compact field نمایش داده شود (compact) یا تمام عرض dialog را بگیرد (full)
|
remember |
مشخص میکند که مقدارهای قبلا انتخابشده برای این فیلد ذخیره شوند یا نه، و دفعه بعد که Push Defect dialog باز میشود دوباره بازیابی شوند یا نه |
required |
مشخص میکند این فیلد اجباری است یا اختیاری، و آیا کاربران باید در Push Defect dialog برای آن مقدار وارد کنند یا نه |
پیوستها #
GitLab Defect Plugin از ارسال attachment به GitLab هم پشتیبانی میکند. این فیلد را میتوانید فعال یا غیرفعال کنید، اما قابل سفارشیسازی نیست. برای ارسال یک یا چند attachment به GitLab، کافی است attachment را به بخش attachments یا description در push dialog بکشید، یا روی همان بخش کلیک کنید و attachment را از file system خود انتخاب کنید.
#
برای فعال کردن attachmentها در push dialog، مقدار «attachments=on» را به [push.fields] بخش تنظیمات Defect Plugin اضافه کنید.







