تیمهای QA اغلب قبل از هر release با یک چالش تکراری روبهرو میشوند: تعداد تستهای موجود بیشتر از زمانی است که برای اجرای همه آنها دارند. با رشد applicationها، سریعتر شدن releaseها و بزرگتر شدن regression suiteها، تشخیص اینکه کدام تستها برای release فعلی حیاتیتر هستند سختتر میشود.
اولویتبندی با هوش مصنوعی با رتبهبندی هوشمندانه تستها در یک test run، بر اساس ریسک احتمالی، میزان ارتباط و اهمیت، به حل این مشکل کمک میکند. بهجای اینکه با همه تستها یکسان برخورد شود، AI به تیم شما کمک میکند ابتدا روی تستهایی تمرکز کند که احتمال بیشتری دارد defectهای مهم را آشکار کنند.
این قابلیت با استفاده از دادههای اجرای قبلی، defectهای لینکشده، labelها و دستورالعملهای مخصوص release شما، بهطور خودکار برای هر test این موارد را تعیین میکند:
- AI Priority – Very High، High، Medium یا Low
- AI Reason – توضیحی روشن درباره اینکه چرا test این رتبه را دریافت کرده است
این قابلیت به تیمهای QA کمک میکند:
- تمرکز تلاش تست روی بخشهایی که بیشترین اهمیت را دارند
- کاهش ریسک release در چرخههایی که زمان محدودی دارند
- سرعت بخشیدن به regression testing
- افزایش اطمینان از آمادگی برای release
- اولویتبندی سریعتر بخشهای تازه تغییرکرده یا پرریسک
- تصمیمگیری هوشمندانهتر در تست، با استفاده از روندهای قبلی و insightهای AI
اولویتبندی با هوش مصنوعی بهویژه برای این موارد ارزشمند است:
- regression suiteهای بزرگ
- تیمهای Agile پرسرعت
- بازههای زمانی کوتاه برای release
- استراتژیهای تست مبتنی بر ریسک
- تیمهایی با ظرفیت محدود برای تست
- محیطهایی با releaseهای پرتکرار
در دسترس است و بهصورت پیشفرض فعال است. اگر این قابلیت را نمیبینید، با administrator تستریل خود تماس بگیرید.
قبل از شروع #
اولویتبندی با هوش مصنوعی بهصورت پیشفرض برای instanceهای TestRail Cloud فعال است. برای استفاده از این قابلیت، باید شرایط زیر برقرار باشد:
-
اولویتبندی با هوش مصنوعی در سطح instance فعال مانده باشد (AI Hub → AI Settings)
-
اولویتبندی با هوش مصنوعی برای project شما فعال مانده باشد (Project Settings)
-
نقش کاربری شما یا نقش دسترسی شما در project، مجوز استفاده از اولویتبندی با هوش مصنوعی را داشته باشد
-
test run در حال حاضر باز باشد (archived یا closed نشده باشد)
اگر دکمه اولویتبندی با هوش مصنوعی نمایش داده میشود اما غیرفعال است، نشانگر ماوس را روی آن نگه دارید تا دلیل آن را ببینید.
مرحله ۱: یک Test Run را باز کنید #
به test run باز موردنظر برای اولویتبندی بروید. در نوار ابزار test run، روی Prioritize (BETA) کلیک کنید. یکی از گزینههای موجود را انتخاب کنید:
- All tests – همه تستهای موجود در run را اولویتبندی میکند. اگر تعداد تستها از حداکثر مجاز بیشتر باشد، این گزینه غیرفعال میشود.
- Selected tests – فقط تستهایی را که بهصورت دستی انتخاب کردهاید اولویتبندی میکند. اگر انتخاب شما خارج از محدوده حداقل یا حداکثر مجاز باشد، این گزینه غیرفعال میشود.

مرحله ۲: پیکربندی اولویتبندی #
modal اولویتبندی به شما امکان میدهد اطلاعاتی را که AI هنگام تحلیل تستها استفاده میکند کنترل کنید؛ این کار کمک میکند AI برای release شما تصمیمهای اولویتبندی دقیقتر و متناسبتری با context بگیرد.
استفاده از دادههای تاریخی #
وقتی Historical Data فعال باشد، AI فعالیتهای تست قبلی مرتبط با test caseهای موجود در test run فعلی را تحلیل میکند.
این اطلاعات ممکن است شامل موارد زیر باشد:
- نتایج تستهای قبلی
- failureهای گذشته
- defectهای لینکشده
- الگوهای اجرا
- بخشهایی که زیاد fail میشوند یا ناپایدار هستند
میتوانید با انتخاب دوره بازبینی ۷، ۳۰ یا ۶۰ روزه مشخص کنید AI چه مقدار از دادههای اجرای قبلی را در نظر بگیرد.
AI از این اطلاعات برای شناسایی بهتر موارد زیر استفاده میکند:
- قابلیتهای پرریسک
- تستهای مرتبط با failureهای تکرارشونده
- بخشهایی که اخیراً ناپایدار بودهاند
- تستهای لینکشده به defectهای شناختهشده
- قابلیتهایی که ممکن است پیش از release به توجه بیشتری نیاز داشته باشند
میتوانید گزینه Use Historical Data را خاموش کنید اگر میخواهید AI تستها را فقط بر اساس context مربوط به release فعلی، دستورالعملها و فیلدهای انتخابشده test case اولویتبندی کند. وقتی دادههای تاریخی در نظر گرفته نمیشود، ارائه موارد زیر اهمیت بیشتری دارد:
- شفاف و دقیق Additional Instructions
- مرتبط فیلدهای test case که context معنایی کافی در اختیار AI قرار میدهند تا هدف، ریسک و پوشش هر تست را درک کند
برای بهترین نتیجه، اطلاعاتی مانند موارد زیر را وارد کنید:
- بخشهای پرریسک اپلیکیشن
- قابلیتهایی که اخیراً تغییر کردهاند
- defectهای شناختهشده یا featureهای ناپایدار
- workflowهای حیاتی کسبوکار
- بخشهایی که به پوشش regression عمیقتری نیاز دارند
Labels (اختیاری) #
از labelها استفاده کنید تا به AI بگویید کدام بخشها، قابلیتها یا انواع test برای release فعلی مهمتر هستند.
برای مثال:
-
Smoke
-
Checkout
-
Payments
-
Security
-
Critical Path
میتوانید حداکثر ۶ test case و test label را با استفاده از جستجوی type-ahead انتخاب کنید.
Additional Instructions (الزامی) #
دستورالعملهایی وارد کنید که توضیح دهند AI برای release فعلی باید روی چه مواردی تمرکز کند. مثالها:
-
بخشهایی که اخیراً در کد آنها تغییر ایجاد شده است
-
workflowهای پرریسک
-
ناپایداریهای شناختهشده
-
defectهایی که اخیراً گزارش شدهاند
-
قابلیتهای حیاتی برای کسبوکار
نمونه promptها:
-
«روی checkout، پردازش پرداخت و workflowهای authentication که اخیراً تغییر کردهاند تمرکز کن.»
-
«testهای مربوط به mobile responsiveness و مشکلات شناختهشده login را در اولویت قرار بده.»
-
«این release شامل تغییرات مهمی در API است. روی ریسک integration و regression تمرکز کن.»
- Additional Instructions قبل از اجرای اولویتبندی الزامی است.
- promptهای خوب و دقیق به AI کمک میکنند context این release، بخشهای پرریسک و اولویتهای تست را بهتر درک کند؛ در نتیجه اولویتبندی دقیقتر انجام میشود.
- میتوانید promptها را به هر زبانی که TestRail پشتیبانی میکند بنویسید.
- URLها در prompt پذیرفته میشوند، اما محتوای آنها توسط AI استخراج یا تحلیل نمیشود.
Test Fields #
بعد از اینکه وارد کردن دستورالعملها را شروع کردید، انتخابگر Test Fields نمایش داده میشود. حداکثر ۶ فیلد را انتخاب کنید تا AI هنگام ارزیابی هر test آنها را تحلیل کند.
نمونههای رایج شامل Title، Steps، Expected Result، Description و موارد مشابه هستند. فقط فیلدهایی که در testهای انتخابشده وجود دارند در انتخابگر نمایش داده میشوند. انواع case field زیر پشتیبانی میشوند:
- Text
- مراحل
- سناریو
- رشته

مرحله ۳: اجرای اولویتبندی #
وقتی همه فیلدهای ضروری کامل شدند، میتوانید اولویتبندی را شروع کنید. TestRail تستهای شما را با AI تحلیل میکند و نتایج اولویتبندی را تولید میکند.
در هر لحظه، برای هر test run فقط یک فرایند اولویتبندی میتواند اجرا شود. اگر کاربر دیگری قبلاً اولویتبندی را برای همان run شروع کرده باشد، یک اعلان میبینید و باید تا پایان پردازش صبر کنید و سپس اولویتبندی جدیدی را شروع کنید.
مرحله ۴: بررسی و کار با نتایج #
پس از تکمیل اولویتبندی، test run را باز کنید تا نتایج AI Priority و AI Reasons تولیدشده برای تستهای انتخابشده را بررسی کنید. هر تست اولویتبندیشده یکی از مقادیر AI Priority زیر را دریافت میکند:
-
بسیار بالا
-
بالا
-
متوسط
-
پایین
-
اولویتبندینشده (تستهایی که در اجرای فعلی اولویتبندی لحاظ نشدهاند)
تستها بهصورت خودکار بر اساس سطح اولویت گروهبندی و مرتب میشوند و بالاترین اولویت در ابتدا نمایش داده میشود. این کار کمک میکند راحتتر روی بخشهایی تمرکز کنید که برای release پرریسکتر یا مهمتر در نظر گرفته شدهاند.
ستون AI Reason توضیح میدهد چرا یک تست اولویت تعیینشده را دریافت کرده است. اگر ستون AI Reason پنهان باشد، همچنان میتوانید با نگه داشتن ماوس روی مقدار AI Priority، توضیح آن را ببینید.

در بالای test run یک بنر خلاصه نمایش داده میشود که نشان میدهد اولویتبندی آخرین بار چه زمانی اجرا شده، چه کسی آن را اجرا کرده و تحت چه شرایطی انجام شده است. این بنر به تیمها کمک میکند درباره نحوه تولید تصمیمهای اولویتبندی دید و شفافیت داشته باشند، استراتژی تست را راحتتر بررسی کنند، context مورد استفاده AI را بهتر بفهمند و درباره ریسک release در تیم همسو شوند.
همچنین میتوانید هر اولویتی را که AI تعیین کرده است بهصورت دستی تغییر دهید. برای این کار، روی مقدار موجود در ستون AI Priority کلیک کنید و سطح اولویت دیگری را انتخاب کنید. تست بلافاصله به گروه اولویت مربوط منتقل میشود. با نگه داشتن ماوس روی مقدار بهروزشده، اولویت اولیهای که AI تعیین کرده بود برای مقایسه نمایش داده میشود.

-
AI میتواند به شناسایی بخشهای احتمالاً پرریسک و سریعتر شدن تصمیمگیری کمک کند، اما بازبینی انسانی همچنان ضروری است. تیمهای QA باید اولویتهای تولیدشده توسط AI را بررسی کنند و هنگام تصمیمگیری درباره اینکه چه چیزی اجرا شود، دانش محصول، context مربوط به release و تجربه تست خود را هم در نظر بگیرند.
مدیریت دسترسی به اولویتبندی با AI #
قابلیت Prioritize with AI بهصورت پیشفرض برای همه instanceهای TestRail Cloud فعال است. نقشهای کاربری که permissionهای لازم را دارند میتوانند دسترسی به این قابلیت را در سطح instance، project و user role کنترل کنند تا با سیاستهای حاکمیتی و روندهای تست سازمان هماهنگ باشد.
-
برای فعال یا غیرفعال کردن این قابلیت در کل instance، به مسیر زیر بروید: AI Hub → AI Settings
-
برای مدیریت دسترسی در یک project مشخص، به مسیر زیر بروید: Project Settings → Edit Project
-
برای کنترل اینکه کدام کاربران به این قابلیت دسترسی داشته باشند، به مسیر زیر بروید: Administration → Users & نقشها → نقشها
-
همچنین میتوانید دسترسی را با استفاده از نقشهای دسترسی project مدیریت کنید؛ این نقشها، نقش global کاربر را در یک project مشخص override میکنند.
Audit Logs #
Audit logging برای Prioritize with AI برای مشتریانی در دسترس است که از لایسنس Enterprise استفاده میکنند و auditing در instance TestRail آنها فعال است.
وقتی این قابلیت فعال باشد، TestRail فعالیتهای کلیدی Prioritize with AI را در مسیر زیر ثبت میکند: Site Settings → Auditing Logs
این audit logها به سازمانها کمک میکنند شفافیت، governance و traceability فعالیتهای مرتبط با AI را در TestRail حفظ کنند.
یادگیری Prioritize with AI در TestRail Academy #
ببینید چطور میتوانید از AI-powered test prioritization برای تمرکز روی بخشهای پرریسک، افزایش اطمینان از release و تصمیمگیری هوشمندانهتر در testing استفاده کنید.
- تنظیمات prioritization را پیکربندی کنید
- AI promptهای مؤثر بنویسید
- نتایج AI Priority و AI Reason را درک کنید
- AI را در workflowهای risk-based testing بهکار ببرید
منابع بیشتر

