در این بخش توضیح میدهیم چطور TestRail را با Asana یکپارچه کنید. در حال حاضر چهار روش برای این یکپارچهسازی وجود دارد:
- استفاده از Defect URLها برای لینککردن test resultها به Asana
- استفاده از Reference URLها برای لینککردن test caseها به Asana
- استفاده از defect plugin مخصوص Asana برای ارسال و جستوجوی issueهای Asana در فیلد Defects در test resultها
- استفاده از reference plugin مخصوص Asana برای جستوجوی issueهای Asana در فیلد References موجودیتهای TestRail، مانند test caseها، test runها و milestoneها
لازم نیست از همه گزینههای یکپارچهسازی استفاده کنید و میتوانید این تنظیمات را همراه با ابزارهای دیگر هم بهکار ببرید. پیکربندی این یکپارچهسازی معمولاً فقط چند دقیقه زمان میبرد. این راهنما توضیح میدهد چطور آن را تنظیم کنید و این قابلیت چگونه کار میکند.
Defect URLها #
Defect URLها به TestRail نشان میدهند چطور یک Defect ID را به URL مربوط به نمونه Asana شما تبدیل کند. دو نوع URL وجود دارد: View URL و Add URL.
گزینه Defect View URL برای ساختن لینک به Asana بر اساس Defect ID استفاده میشود؛ بنابراین کافی است روی یک ID کلیک کنید تا issue مستقیماً در Asana باز شود.
گزینه Defect Add URL برای ساختن لینک به صفحه ایجاد issue در Asana استفاده میشود. بعد از پیکربندی URL، یک لینک Add جدید کنار فیلد Defects در پنجره Add Test Result و همچنین در Defects menu در قابلیت TestRail’s Push Defect From Anywhere نمایش داده میشود. با این لینک میتوانید برای گزارش یک bug جدید به فرم New Issue در Asana بروید.
اگر لینک Add را میبینید، میتوانید ID مربوط به issue جدید Asana را کپی کنید و آن را در هر فیلد Defects یا References داخل TestRail وارد کنید.
میتوانید URLهای Asana را در TestRail بهصورت سراسری از مسیر Administration > Integration یا بهصورت جداگانه برای هر project از داخل تنظیمات همان project پیکربندی کنید. برای تنظیم آدرسها از URLهای نمونه زیر استفاده کنید:
Asana installation
Defect View Url: https://app.asana.com/0/0/%id%
Defect Add Url: https://app.asana.com/0/<project_id>/list
#
در Asana لینک مستقیمی برای صفحه ایجاد issue جدید وجود ندارد؛ بنابراین Add URL میتواند https://app.asana.com/۰/home/ یا هر لینک دیگری به یک صفحه ورودی در Asana باشد.
مطمئن شوید که <project_ID> را با Project ID واقعی در Asana که میخواهید به آن متصل شوید جایگزین میکنید.
اگر defect plugin را پیکربندی کرده باشید، میتوانید نشانگر ماوس را روی defect ID نگه دارید و جزئیات issue را مستقیماً از داخل TestRail ببینید.
Reference URLها #
Reference URLها تقریباً به همان روشی پیادهسازی میشوند که در بالا برای Defect URLها توضیح داده شد. تفاوت اصلی این است که Reference URLها برای فیلد References در موجودیتهای مختلف TestRail استفاده میشوند، نه برای فیلد Defects.
گزینه Reference View URL به همان روش توضیحدادهشده در بالا پیکربندی میشود و به TestRail اجازه میدهد بر اساس ID واردشده در فیلد References، یک لینک مستقیم به Asana ایجاد کند.
گزینه Reference Add URL نیز به همان روش Defect Add URL پیکربندی میشود. پس از پیکربندی، یک لینک Add کنار هر فیلد References در instance یا project شما نمایش داده میشود. اگر از Add link، میتوانید ID issue جدید خود در Asana را کپی کنید و آن را در هر فیلد Defects یا References در TestRail وارد کنید.
اگر Reference plugin را پیکربندی کرده باشید، میتوانید نشانگر ماوس را روی Reference ID نگه دارید و جزئیات issue را مستقیم داخل TestRail ببینید. در ادامه، نحوه استفاده و پیکربندی Defect Plugin و Reference Plugin را توضیح میدهیم.
Defect plugin #
از Defect pluginها میتوانید برای ایجاد یکپارچهسازی عمیقتر با bug tracker استفاده کنید. TestRail یک Asana defect plugin آماده استفاده هم دارد. برای پیکربندی defect plugin، گزینه Administration > Integration را انتخاب کنید و سپس Asana را در Defect Plugin فهرست کشویی انتخاب کنید. مرحله بعد این است که همه تنظیمات لازم برای اتصال را در بخش [connection] پیکربندی کنید. همچنین میتوانید با ویرایش تنظیمات یک project، این یکپارچهسازی را فقط برای همان project تنظیم کنید.
#
این یکپارچهسازی به workspace GID نمونه Asana شما نیاز دارد. میتوانید GID را از آدرس https://app.asana.com/api/1.0/workspaces با استفاده از یک API client یا مرورگر وب دریافت کنید.
Defect Plugin از API مربوط به Asana استفاده میکند؛ بنابراین برای اتصال به API به credentials معتبر نیاز دارید. میتوانید یک Personal Access Token واحد برای همه کاربران Asana وارد کنید، یا با استفاده از User Variables به هر کاربر TestRail اجازه دهید token خودش را پیکربندی کند. token جدید را میتوانید در Asana developer console بسازید.
#
اکیداً توصیه میکنیم User Variables را پیکربندی کنید. برای آشنایی بیشتر با نحوه پیکربندی آنها، به مستندات User Variables مراجعه کنید.
بعد از پیکربندی Defect Plugin، گزینه ارسال defect جدید در منوی Defect from Anywhere و همچنین در پنجره Add Result داخل یک test run نمایش داده میشود. این پنجره به شما امکان میدهد بدون خروج از TestRail، یک issue جدید در Asana ایجاد کنید.

سفارشیسازیها #
Asana defect plugin برای کار با پیکربندی استاندارد Asana ساخته شده است. TestRail به شما اجازه میدهد فیلدهایی را که در Push dialog نمایش داده میشوند، و همچنین فیلدهایی را که هنگام نگه داشتن ماوس روی Defect IDها دیده میشوند، سفارشی کنید. فیلدهای push و hover که از قبل پیکربندی شدهاند، در بخشهای مربوط به خود یعنی [push.fields] و [hover.fields] میتوانند روی on یا off تنظیم شوند. همچنین میتوانید ترتیب نمایش آنها را با جابهجا کردن فیلدها در هر بخش تغییر دهید.
توجه داشته باشید بعضی فیلدها، مثل فیلد title، همیشه فعال هستند و ممکن است در این بخشها نمایش داده نشوند؛ چون TestRail یا Asana همیشه به آنها نیاز دارد.
Asana Defect Plugin از تغییر ویژگیهای فیلدها و همچنین custom fieldها هم پشتیبانی میکند.
علاوه بر فعال کردن، غیرفعال کردن یا مرتبسازی دوباره فیلدها به روشی که بالاتر توضیح داده شد، میتوانید گزینههای بیشتری را برای هر فیلد تغییر دهید. برای این کار، باید برای آن فیلد یک بخش تعریف کنید؛ برای مثال [push.field.description]، و گزینههای اضافی را داخل همان بخش مشخص کنید.
[field.settings.description]
label=Detailed Description
required=true
در ادامه، فهرست کامل گزینههای موجود برای فیلدها و توضیح هرکدام آمده است:
| گزینه | توضیحات |
|---|---|
| label | نام نمایشی فیلد را در پنجره Push Defect مشخص میکند برای custom fieldها الزامی است |
| size | مشخص میکند فیلد بهصورت compact نمایش داده شود compact یا از تمام عرض پنجره استفاده کند full |
| remember | مشخص میکند که آیا مقادیر قبلاً انتخابشده برای این فیلد ذخیره شوند و دفعه بعد که dialog Push Defect باز میشود، دوباره بازیابی شوند یا نه. |
| الزامی | مشخص میکند این فیلد اجباری است یا اختیاری، و آیا کاربران باید در dialog Push Defect برای آن مقدار وارد کنند یا نه. |
| نوع | نوع این فیلد را مشخص میکند. برای مشاهده فهرست نوع فیلدهای پشتیبانیشده، بخش فیلدهای سفارشی را در ادامه ببینید. (برای فیلدهای سفارشی الزامی است) |
فیلدهای سفارشی #
برای افزودن فیلدهای سفارشی به dialog Push Defect در TestRail هم میتوانید از روش بالا استفاده کنید. برای این کار، کافی است یک خط شامل فیلد سفارشی خودتان را به بخش [push.fields] اضافه کنید:
[push.fields]
...
description=on
customfield_11102=on
سپس بخش [field.settings.customfield_] را اضافه کنید. این بخش لازم است تا plugin بتواند دادهها را به ابزار شما ارسال کند و/یا از آن دریافت کند. نمونه زیر را ببینید:
[field.settings.customfield_11102]
label=Customer
size=compact
type=dropdown
required=true
#
فیلدهای سفارشی به حسابهای premium Asana نیاز دارند. GIDهای فیلدهای سفارشی را میتوانید از طریق Asana API و مطابق با مستندات فیلدهای سفارشی Asana.
برای فیلدهای سفارشی، Label و Type جزو تنظیمات الزامی فیلد هستند.
نوع فیلدهای زیر پشتیبانی میشوند:
| نوع فیلد | توضیح |
|---|---|
| bool | یک منوی dropdown بله/خیر برای مقدارهای True/False، Yes/No یا مقدارهای دودویی مشابه. |
| date | یک فیلد string که مقدار تاریخ با قالب YYYY-MM-DD یا ساختاری مشابه را میپذیرد. قالببندی ممکن است به نیازهای ابزار متصلشده بستگی داشته باشد. |
| datetime | یک فیلد string که مقدار تاریخ و زمان با قالب YYYY-MM-DD HH:MM یا ساختاری مشابه را میپذیرد. قالببندی ممکن است به نیازهای ابزار متصلشده بستگی داشته باشد. |
| dropdown | یک فهرست dropdown که به کاربران اجازه میدهد یکی از چند گزینه موجود را انتخاب کنند. |
| integer | |
| multiselect | به کاربران اجازه میدهد چند گزینه از پیش تعریفشده را انتخاب کنند. |
| string | یک فیلد کوچک برای متن آزاد، تا حداکثر ۲۵۰ کاراکتر. |
| text | یک فیلد بزرگ برای متن آزاد، بدون محدودیت عملی در اندازه. |
پیوستها #
Asana Defect Plugin از ارسال پیوستها به Asana هم پشتیبانی میکند. این فیلد را میتوان فعال یا غیرفعال کرد، اما قابل سفارشیسازی نیست. برای ارسال یک یا چند پیوست به Asana، کافی است پیوست را به بخش attachments یا description در push dialog بکشید، یا روی همان بخش کلیک کنید و فایل را از سیستم خود انتخاب کنید.
Reference plugin #
از Reference pluginها میتوان برای دریافت اطلاعات تکمیلی از IDهایی استفاده کرد که در فیلد References موجودیتهای TestRail، مثل test caseها، test runها و milestoneها وارد شدهاند. Reference Plugin در تب References از تنظیمات integration، به همان روشی پیکربندی میشود که Defect Plugin پیکربندی میشود.
این plugin از نمایش اطلاعات هنگام نگهداشتن نشانگر روی Reference IDها پشتیبانی میکند، اما برای فیلد References از dialog نوع Push پشتیبانی نمیکند. همچنین میتوانید فیلدهایی را که با hover روی لینک نمایش داده میشوند سفارشی کنید و طبق توضیح بالا فیلدهای سفارشی اضافه کنید.
اگر Defect Plugin را از قبل برای Asana پیکربندی کردهاید، میتوانید بخشهای [connection] و [hover.fields] را از Defect Plugin کپی کرده و در تنظیمات Reference plugin قرار دهید. همچنین میتوانید فیلدهای متفاوتی را برای نمایش References و Defects انتخاب کنید.
سفارشیسازیهای بیشتر #
TestRail از defect pluginهای سفارشی هم پشتیبانی میکند. اگر تیم شما از TestRail Server استفاده میکند، میتوانید defect plugin را بیشتر سفارشی کنید، یا plugin خودتان را بسازید، تا از نوع فیلدهای بیشتر یا دادههای دیگر پشتیبانی کند. لطفاً به مستندات Custom Plugins برای اطلاعات بیشتر.

