Skip to content
تست ریل |‌ سرویس مدیریت تستتست ریل |‌ سرویس مدیریت تست
  • صفحه اصلی
  • درباره ما
  • تماس با ما
  • -
  • -

Testrail

543
  • راهنمای کاربر
    • آغاز کار با TestRail
      • جستجو
      • پروژه‌ها و انواع آن‌ها
      • نکته‌ها و ترفندهای کاربردی
      • میانبرهای صفحه‌کلید و hotkeyها
      • آشنایی با TestRail
      • مرجع قالب‌بندی ویرایشگر متن
      • صفحه شروع به کار
      • TestRail Server و TestRail Cloud
      • بهترین شیوه‌ها
        • بهترین روش‌ها: تولید کد تست اتوماسیون با هوش مصنوعی
        • راهنمای بهترین روش‌ها: بک‌لاگ اتوماسیون تست
        • راهنمای بهترین روش‌ها: TestRail CLI
        • راهنمای بهترین روش‌ها: معیارهای تست
        • راهنمای بهترین روش‌ها: test runها و نتایج تست
        • راهنمای بهترین روش‌ها: test caseها
        • راهنمای بهترین روش‌ها: Milestoneها
    • هوش مصنوعی در TestRail
      • راهنمای استفاده مسئولانه از هوش مصنوعی
      • اولویت بندی تست ها با هوش مصنوعی
        • درک AI Reasons در قابلیت Prioritise with AI
        • چگونه با Prioritize with AI بهترین نتیجه را بگیریم
        • شروع با اولویت‌بندی تست‌ها با هوش مصنوعی
      • ایجاد تست‌کیس‌ها با هوش مصنوعی
        • چگونه بهترین نتیجه را از AI Test Case Generator در TestRail بگیریم
        • شروع سریع: تولید تست‌کیس با هوش مصنوعی
      • تست ویژگی های هوش مصنوعی با استفاده از TestRail
        • یکپارچه‌سازی ابزارهای ارزیابی هوش مصنوعی با TestRail
        • الگوی AI Evaluation با داشبورد Quality Insights
      • خودکار کردن تست‌کیس‌ها با هوش مصنوعی
        • بیشترین بهره را از اتوماسیون مبتنی بر هوش مصنوعی در TestRail ببرید
        • شروع کار با Automate Test Cases with AI
    • تست‌کیس‌ها
      • توسعه رفتارمحور (BDD)
      • وارد کردن test caseها از CSV یا Excel
      • مراحل مشترک
      • وارد کردن test caseها از XML
      • انتقال، کپی، حذف و بازیابی test caseها
      • جدا کردن مراحل تست از نتایج تست
      • برچسب‌گذاری
      • Test suiteها
      • فیلتر کردن و مرتب‌سازی
      • خروجی گرفتن از test caseها
      • قالب‌های test case
      • افزودن test caseها
      • بخش‌ها
      • فیلدهای test case
    • برنامه‌ریزی و اجرای تست
      • به‌روزرسانی نتایج تست
      • ایجاد test run جدید
      • ایجاد test plan جدید
      • Configurations
      • اختصاص دادن تست‌ها برای اجرا
      • اجرای مجدد test caseها
      • بستن test run و test plan
      • ثبت نتایج تست
      • Milestoneها
    • گزارش‌گیری و تحلیل
      • سؤالات متداول درباره گزارش‌ها
      • سفارشی‌سازی نمودارها
      • نمای کلی گزارش‌ها
      • تنظیمات کلی reportها
      • چاپ reportها
      • نمودارها و داشبوردها
      • موارد کاربرد reportها
      • گزارش موارد
        • گزارش Status Tops (Cases)
        • گزارش توزیع ویژگی‌ها (test caseها)
        • گزارش پوشش مراجع (test caseها)
        • گزارش خلاصه فعالیت (test case ها)
      • گزارش های بین پروژه ای
        • حجم کاری کاربر (اجرای تست)
        • خلاصه Projectها (Test Execution)
      • گزارش نقص
        • گزارش Summary for References (Defects)
        • گزارش Summary for Cases (Defects)
        • گزارش خلاصه (Defects)
      • گزارش نتایج
        • گزارش Property Distribution (Results)
        • گزارش Comparison for Cases (Results)
        • گزارش Comparison for References (Results)
      • گزارش های خلاصه
        • گزارش Runs (Summary)
        • گزارش پروژه (خلاصه)
        • گزارش Plan (Summary)
        • گزارش Milestone (Summary)
    • مدیریت و سفارشی‌سازی‌ها
      • ذخیره‌سازی و مدیریت داده‌ها
      • مدیریت پیوست‌ها
      • پیکربندی فیلدهای سفارشی
      • افزودن لوگوی سفارشی به محیط TestRail
      • افزودن کاربران به محیط TestRail
      • تنظیم تم Light یا Dark در TestRail
      • بایگانی هوشمند برای Test Runها و Test Planها
      • پیکربندی تنظیمات زبان در TestRail
      • پیکربندی‌ها و integrationهای پشتیبانی‌شده در TestRail
      • پشتیبان‌گیری روزانه TestRail Professional Hosted
      • اسکریپت های رابط کاربری
        • نمونه‌های UI Scripts
        • معرفی UI Scripts
      • مدیریت کاربران و امنیت
        • تنظیم احراز هویت چندعاملی (MFA)
        • مدیریت مجوزها و نقش‌های کاربران
        • مدیریت امنیت کاربران
        • مدیریت امنیت instance
    • راهنمای سازمانی
      • پارامترسازی تست، متغیرها و datasetها
      • نسخه‌بندی test case
      • بررسی و تأیید test caseها
      • مدیریت در سطح project
      • سفارشی‌سازی ایمیل
      • زمان‌بندی قابل تنظیم پشتیبان‌گیری و بازیابی
      • ثبت لاگ حسابرسی
      • خلاصه ویژگی‌های Enterprise
      • پیکربندی یک ورود به سیستم (SSO)
        • پیکربندی SSO با ADFS
        • پیکربندی Okta SSO
        • پیکربندی Google SSO
        • پیکربندی Azure SSO
        • پیکربندی SSO
    • راهنمای مهاجرت
      • مهاجرت: CSV و Excel
      • مهاجرت: مقدمه
      • مهاجرت از TestRail Server به TestRail Cloud
      • مهاجرت از QMetry
      • مهاجرت از TestLink
      • مهاجرت از Azure DevOps
      • مهاجرت از Xray (Cloud)
      • مهاجرت از Xray (Server و Datacenter)
      • مهاجرت از qTest
      • مهاجرت از Zephyr Scale
      • مهاجرت از Zephyr Squad
    • صورتحساب و مدیریت حساب
      • پورتال صورت‌حساب TestRail
      • تغییرات پیش‌رو در قیمت اشتراک ماهانه TestRail
      • درخواست‌های ارزیابی امنیتی
      • گزینه‌های اشتراک و صورت‌حساب
      • صورتحساب و مدیریت – پرسش‌های متداول
  • راهنمای سرور
    • نصب و راه اندازی
      • فعال‌سازی کار پس‌زمینه
      • بازگرداندن TestRail به نسخه قدیمی‌تر
      • نصب TestRail Enterprise Server
      • به‌روزرسانی license key ویرایشگر Rich Text Editor (۲۰۲۶)
      • نسخه‌های پشتیبانی‌شده TestRail Server
      • نصب نسخه های 9.4.1 تا 10.4.1
        • ارتقای TestRail از ۹.۴.۱ تا ۱۰.۴.۱ در Windows
        • ارتقای TestRail از ۹.۴.۱ تا ۱۰.۴.۱ در Unix/Linux
        • الزامات نصب نسخه‌های ۹.۴.۱ تا ۱۰.۴.۱
        • نصب با داکر
          • نصب نسخه‌های ۹.۴.۱ تا ۱۰.۴.۱ با Docker
        • نصب با یونیکس/لینوکس
          • آماده‌سازی سرور Unix/Linux برای نصب – از نسخه ۱۰.۰.۱ به بعد
          • نصب TestRail (یونیکس/لینوکس)
          • ایجاد database خالی SQL (Unix / Linux)
          • آماده‌سازی سرور Unix/Linux برای نصب – نسخه‌های ۹.۴.۱ تا ۹.۸.۱
        • نصب روی ویندوز
          • آماده‌سازی سرور ویندوز برای نصب – نسخه‌های ۱۰.۰.۱ به بعد
          • ایجاد پایگاه داده SQL خالی (Windows)
          • آماده‌سازی سرور ویندوز برای نصب – نسخه‌های ۹.۴.۱ تا ۹.۸.۱
          • نصب TestRail (ویندوز)
      • نسخه های قدیمی تر
        • نصب نسخه 9.3.2
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶/۸.۱.۰/۹.۰.۰/۹.۱.۰/۹.۲.۱ به ۹.۳.۲ در Windows
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶/۸.۱.۰/۹.۰.۰/۹.۱.۰/۹.۲.۱ به ۹.۳.۲ در Unix/Linux
          • نیازمندی‌های نصب – نسخه ۹.۳.۲
          • نصب با داکر
            • نصب ۹.۳.۲.۱۰۰۲ روی داکر
          • نصب با یونیکس / لینوکس
            • نصب TestRail (یونیکس/لینوکس) – نسخه ۹.۳.۲.۱۰۰۲
            • ایجاد پایگاه داده SQL خالی (Unix/Linux) – نسخه ۹.۳.۲.۱۰۰۲
            • نصب پایگاه داده Cassandra NoSQL (یونیکس / لینوکس) – نسخه ۹.۳.۲.۱۰۰۲
            • آماده‌سازی سرور Unix/Linux برای نصب – ۹.۳.۲.۱۰۰۲
          • نصب روی ویندوز
            • نصب TestRail (ویندوز) – نسخه ۹.۳.۲.۱۰۰۲
            • ایجاد دیتابیس SQL خالی (Windows) – نسخه ۹.۳.۲.۱۰۰۲
            • نصب پایگاه داده Cassandra NoSQL در ویندوز – نسخه ۹.۳.۲.۱۰۰۲
            • آماده‌سازی سرور ویندوز برای نصب – نسخه ۹.۳.۲.۱۰۰۲
        • نصب نسخه 9.2.1
          • الزامات نصب – نسخه ۹.۲.۱
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶/۸.۱.۰/۹.۰.۰/۹.۱.۰ به ۹.۲.۱ در Unix/Linux
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶/۸.۱.۰/۹.۰.۰/۹.۱.۰ به ۹.۲.۱ در Windows
          • نصب با داکر
            • نصب ۹.۲.۱.۱۰۱۰ روی داکر
          • نصب با یونیکس / لینوکس
            • نصب TestRail (Unix/Linux) – نسخه ۹.۲.۱.۱۰۱۰
            • ایجاد پایگاه داده خالی SQL (Unix/Linux) – نسخه ۹.۲.۱.۱۰۱۰
            • نصب پایگاه داده Cassandra NoSQL (یونیکس / لینوکس) – نسخه ۹.۲.۱.۱۰۱۰
            • آماده‌سازی سرور یونیکس/لینوکس برای نصب – ۹.۲.۱.۱۰۱۰
          • نصب روی ویندوز
            • نصب TestRail در ویندوز – نسخه ۹.۲.۱.۱۰۱۰
            • نصب پایگاه داده Cassandra NoSQL در ویندوز – نسخه ۹.۲.۱.۱۰۱۰
            • ایجاد پایگاه داده خالی SQL (Windows) – نسخه ۹.۲.۱.۱۰۱۰
            • آماده‌سازی سرور ویندوز برای نصب – نسخه ۹.۲.۱.۱۰۱۰
        • نصب نسخه 9.1.0
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶/۸.۱.۰/۹.۰.۰ به ۹.۱.۰ در Windows
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶/۸.۱.۰/۹.۰.۰ به ۹.۱.۰ در Unix/Linux
          • الزامات نصب – نسخه ۹.۱.۰
          • نصب با داکر
            • نصب ۹.۱.۰.۱۰۲۵ روی Docker
          • نصب با یونیکس / لینوکس
            • نصب TestRail (Unix/Linux) – نسخه ۹.۱.۰.۱۰۲۵
            • نصب پایگاه داده NoSQL Cassandra (یونیکس / لینوکس) – نسخه ۹.۱.۰.۱۰۲۵
            • ایجاد database خالی SQL در Unix/Linux – نسخه ۹.۱.۰.۱۰۲۵
            • آماده‌سازی سرور Unix/Linux برای نصب – ۹.۱.۰.۱۰۲۵
          • نصب روی ویندوز
            • آماده‌سازی سرور ویندوز برای نصب – نسخه ۹.۱.۰.۱۰۲۵
            • نصب پایگاه داده NoSQL Cassandra در ویندوز – نسخه ۹.۱.۰.۱۰۲۵
            • ایجاد دیتابیس خالی SQL (Windows) – نسخه ۹.۱.۰.۱۰۲۵
            • نصب TestRail (Windows) – نسخه ۹.۱.۰.۱۰۲۵
        • نصب نسخه 9.0.0
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶/۸.۱.۰ به ۹.۰.۰ در Windows
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶/۸.۱.۰ به ۹.۰.۰ در Unix/Linux
          • الزامات نصب – نسخه ۹.۰.۰
          • نصب با داکر
            • نصب نسخه ۹.۰.۰.۱۰۹۱ در Docker
          • نصب با یونیکس / لینوکس
            • نصب TestRail (یونیکس/لینوکس) – نسخه ۹.۰.۰.۱۰۹۱
            • ایجاد پایگاه داده SQL خالی (Unix/Linux) – نسخه ۹.۰.۰.۱۰۹۱
            • نصب پایگاه داده Cassandra NoSQL در Unix / Linux – نسخه ۹.۰.۰.۱۰۹۱
            • آماده‌سازی سرور یونیکس/لینوکس برای نصب – ۹.۰.۰.۱۰۹۱
          • نصب روی ویندوز
            • نصب TestRail (Windows) – نسخه ۹.۰.۰.۱۰۹۱
            • نصب پایگاه داده NoSQL Cassandra در ویندوز – نسخه ۹.۰.۰.۱۰۹۱
            • ایجاد پایگاه داده SQL خالی (Windows) – نسخه ۹.۰.۰.۱۰۹۱
            • آماده‌سازی سرور Windows برای نصب – نسخه ۹.۰.۰.۱۰۹۱
        • نصب نسخه 8.1.0
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶ به ۸.۱.۰ در Unix/Linux
          • ارتقای TestRail از ۸.۰.۴/۸.۰.۶ به ۸.۱.۰ در Windows
          • الزامات نصب – نسخه ۸.۱.۰
          • نصب با داکر
            • نصب ۸.۱.۰.۶۱۸۶ روی Docker
          • نصب با یونیکس / لینوکس
            • نصب TestRail (یونیکس/لینوکس) – نسخه ۸.۱.۰.۶۱۸۶
            • نصب پایگاه داده NoSQL Cassandra (Unix / Linux) – نسخه ۸.۱.۰.۶۱۸۶
            • ایجاد دیتابیس خالی SQL در Unix/Linux – نسخه ۸.۱.۰.۶۱۸۶
            • آماده‌سازی سرور Unix/Linux برای نصب – ۸.۱.۰.۶۱۸۶
          • نصب روی ویندوز
            • نصب TestRail (ویندوز) – نسخه ۸.۱.۰.۶۱۸۶
            • ایجاد دیتابیس SQL خالی (Windows) – نسخه ۸.۱.۰.۶۱۸۶
            • نصب پایگاه داده Cassandra NoSQL در ویندوز – نسخه ۸.۱.۰.۶۱۸۶
            • آماده‌سازی سرور ویندوز برای نصب – نسخه ۸.۱.۰.۶۱۸۶
        • نصب نسخه 8.0.6
          • الزامات نصب – نسخه ۸.۰.۶
          • ارتقای TestRail از ۸.۰.۴ به ۸.۰.۶ در ویندوز
          • ارتقای TestRail از ۸.۰.۴ به ۸.۰.۶ در Unix/Linux
          • نصب با داکر
            • نصب نسخه ۸.۰.۶.۱۰۱۹ روی Docker
          • نصب با یونیکس / لینوکس
            • نصب TestRail روی Unix/Linux – نسخه ۸.۰.۶.۱۰۱۹
            • ایجاد پایگاه داده SQL خالی (Unix/Linux) – نسخه ۸.۰.۶.۱۰۱۹
            • نصب پایگاه داده Cassandra NoSQL (یونیکس / لینوکس) – نسخه ۸.۰.۶.۱۰۱۹
            • آماده‌سازی سرور Unix/Linux برای نصب – نسخه ۸.۰.۶.۱۰۱۹
          • نصب روی ویندوز
            • ایجاد پایگاه داده خالی SQL (ویندوز) – نسخه ۸.۰.۶.۱۰۱۹
            • نصب TestRail در ویندوز – نسخه ۸.۰.۶.۱۰۱۹
            • نصب پایگاه داده Cassandra NoSQL در ویندوز – نسخه ۸.۰.۶.۱۰۱۹
            • آماده‌سازی سرور ویندوز برای نصب – نسخه ۸.۰.۶.۱۰۱۹
        • نصب نسخه 8.0.4
          • ارتقای TestRail از ۸.۰.۱ به ۸.۰.۴ در Windows
          • ارتقای TestRail از ۸.۰.۱ به ۸.۰.۴ در Unix/Linux
          • نیازمندی‌های نصب – نسخه ۸.۰.۴
          • نصب با داکر
            • نصب نسخه ۸.۰.۴.۷۰۳۶ روی Docker
          • نصب بر روی یونیکس / لینوکس
            • نصب پایگاه داده NoSQL Cassandra (Unix/Linux) – نسخه ۸.۰.۴.۷۰۳۶
            • ایجاد پایگاه داده SQL خالی (Unix/Linux) – نسخه ۸.۰.۴.۷۰۳۶
            • نصب TestRail (یونیکس/لینوکس) – نسخه ۸.۰.۴.۷۰۳۶
            • آماده‌سازی سرور Unix/Linux برای نصب – نسخه ۸.۰.۴.۷۰۳۶
          • نصب روی ویندوز
            • نصب TestRail (Windows) – نسخه ۸.۰.۴.۷۰۳۶
            • آماده‌سازی سرور ویندوز برای نصب – نسخه ۸.۰.۴.۷۰۳۶
            • نصب پایگاه داده NoSQL Cassandra روی ویندوز – نسخه ۸.۰.۴.۷۰۳۶
            • ایجاد پایگاه داده خالی SQL (ویندوز) – نسخه ۸.۰.۴.۷۰۳۶
        • نصب نسخه 8.0.1
          • ارتقای TestRail از ۷.۵.۳ به ۸.۰.۱ در Unix/Linux
          • ارتقای TestRail از ۷.۵.۳ به ۸.۰.۱ در ویندوز
          • نیازمندی‌های نصب – نسخه ۸.۰.۱
          • نصب با داکر
            • نصب TestRail ۸.۰.۱.۱۰۲۹ روی Docker
          • نصب بر روی یونیکس / لینوکس
            • نصب پایگاه داده Cassandra NoSQL (Unix / Linux) – نسخه ۸.۰.۱.۱۰۲۹
            • نصب TestRail (یونیکس/لینوکس) – نسخه ۸.۰.۱.۱۰۲۹
            • ایجاد پایگاه داده خالی SQL (Unix/Linux) – نسخه ۸.۰.۱.۱۰۲۹
            • آماده‌سازی سرور Unix/Linux برای نصب – نسخه ۸.۰.۱.۱۰۲۹
          • نصب روی ویندوز
            • نصب TestRail (ویندوز) – نسخه ۸.۰.۱.۱۰۲۹
            • ایجاد پایگاه داده خالی SQL (ویندوز) – نسخه ۸.۰.۱.۱۰۲۹
            • نصب پایگاه داده Cassandra NoSQL در ویندوز – نسخه ۸.۰.۱.۱۰۲۹
            • آماده‌سازی سرور ویندوز برای نصب – نسخه ۸.۰.۱.۱۰۲۹
        • نصب نسخه 7.5
          • نیازمندی‌های نصب
          • ارتقای TestRail
          • نصب بر روی یونیکس / لینوکس
            • نصب TestRail
            • ایجاد یک پایگاه داده SQL خالی
            • نصب پایگاه داده NoSQL Cassandra در Unix / Linux
            • آماده‌سازی سرور Unix/Linux برای نصب
          • نصب روی ویندوز
            • نصب TestRail
            • ایجاد پایگاه داده SQL خالی
            • نصب پایگاه داده NoSQL Cassandra
            • آماده‌سازی سرور Windows برای نصب
          • نصب با داکر
            • نصب روی Docker: مهاجرت و ارتقای TestRail
            • نصب روی Docker: فایل‌های Compose
            • نصب روی Docker: شروع کار
            • نصب با Docker: نمای کلی
    • مدیریت سرور
      • راه‌اندازی سرور staging
      • ایمن‌سازی نصب‌های TestRail Server
      • بهینه‌سازی نصب‌های TestRail Server
      • بازیابی بکاپ TestRail
      • تهیه نسخه پشتیبان از نمونه TestRail Server
      • عیب یابی
        • ارتقای PHP ۵.۶ به PHP ۷.x
        • افزایش محدودیت حافظه PHP
        • نصب افزونه SQLsrv برای PHP
        • عیب‌یابی نصب TestRail Server
        • افزایش محدودیت آپلود فایل در PHP
        • اجرای عیب‌یابی با Phpinfo()
        • حذف داده‌های اضافی از نمونه TestRail
        • نصب افزونه SQLsrv PHP – نسخه ۸.۰
        • اجرای عیب‌یابی Phpinfo() – نسخه ۸.۰
    • سفارشی سازی ها و افزونه ها
      • سفارشی‌سازی یک defect plugin
      • ساخت defect plugin سفارشی
      • زبان‌ها: ترجمه رابط کاربری TestRail
      • اشکال‌زدایی اسکریپت‌های سفارشی
      • افزونه های گزارش سفارشی
        • Reports: ساخت افزونه report سفارشی (۳/۳)
        • گزارش‌ها: ساخت report plugin سفارشی (۲/۳)
        • گزارش‌ها: ساخت افزونه گزارش سفارشی (۱/۳)
        • معرفی reportهای سفارشی
    • احراز هویت
      • احراز هویت: پیاده‌سازی Single sign-on با TestRail
      • احراز هویت: LDAP
      • احراز هویت: Active Directory
      • احراز هویت: مقدمه
    • استهلاک کاساندرا
      • پاک‌سازی فایل‌های attachment قدیمی
      • انتقال داده‌های Cassandra به MySQL در TestRail Server برای Linux
      • انتقال داده‌های Cassandra در TestRail Server برای Docker در Windows و Linux
      • انتقال داده‌های Cassandra در TestRail Server به MS SQL Server برای Windows
  • ادغام‌ها
    • ادغام‌های الزامات و نقص‌ها
      • آشنایی با integrationهای Reference و Defect
      • پیکربندی یکپارچه‌سازی‌های مرجع
      • پیکربندی متغیرهای کاربر
      • پیکربندی یکپارچه‌سازی با bug trackerها
      • ادغام با Aha! Develop
      • ادغام های موجود
        • یکپارچه‌سازی با Axosoft
        • ادغام با Trello
        • یکپارچه‌سازی با YouTrack
        • یکپارچه‌سازی با VersionOne
        • Integration با Vault
        • یکپارچه‌سازی با Trac
        • یکپارچه‌سازی با Redmine
        • یکپارچه‌سازی با Rally
        • یکپارچه‌سازی با Pivotal Tracker
        • یکپارچه‌سازی با Mantis
        • یکپارچه‌سازی با Lighthouse
        • یکپارچه‌سازی با FogBugz (یا Manuscript)
        • یکپارچه‌سازی با fixx
        • ادغام با Bugzilla
        • یکپارچه‌سازی با BugTracker.NET
        • یکپارچه‌سازی با Bitbucket
        • یکپارچه‌سازی با ایمیل
        • ادغام با Azure DevOps
        • یکپارچه‌سازی با Axosoft SOAP API
        • یکپارچه‌سازی با Axosoft REST API
        • یکپارچه‌سازی با Assembla
        • یکپارچه‌سازی با Asana
        • اپ TestRail برای Azure DevOps
        • یکپارچه‌سازی با GitLab
        • یکپارچه‌سازی با GitHub
        • یکپارچه‌سازی با ClickUp
        • یکپارچه‌سازی با Monday.com
        • اطلسیان جیرا
          • برنامه TestRail Jira
          • استفاده از فیلدهای سفارشی در یکپارچه‌سازی Jira
          • پیکربندی دستی ادغام Jira
          • اتصال به Jira Server
          • اتصال به Jira Cloud
          • یکپارچه‌سازی با Jira
          • بررسی پوشش Jira
          • سؤالات متداول درباره Integration بین TestRail و Jira
          • اتصال به Jira Data Center
    • یکپارچه سازی امنیتی
      • یکپارچه‌سازی اسکن‌های Kiuwan SAST از طریق UI
      • یکپارچه‌سازی اسکن‌های Kiuwan SAST از طریق CLI
    • داشبوردها
      • مروری بر integrationهای dashboard
      • ادغام با Confluence
    • وب هوک ها
      • وب‌هوک‌ها
  • اتوماسیون تست
    • TestRail CLI
      • شروع کار با TestRail CLI
      • لاگ‌گیری و مشاهده‌پذیری
      • مرجع دستورات توسعه رفتارمحور (BDD)
      • راهنمای عملکرد صفحه‌بندی موازی برای test suiteهای بزرگ
      • TRCLI در pipelineهای CI/CD
      • استفاده بهتر از TRCLI
      • نگاشت JUnit به TestRail
      • منابع پارامتر
      • نمونه‌های استفاده
      • مرجع دستورات CLI
      • گزارش‌های SauceLabs و saucectl
      • گردش کار Specification-first
      • گردش کار Code-First
    • ادغام فریم‌ورک‌های اتوماسیون
      • یکپارچه‌سازی با Playwright
      • یکپارچه‌سازی با Pytest
      • یکپارچه‌سازی با Cypress
      • یکپارچه‌سازی با TestNG
      • یکپارچه‌سازی با Robot Framework
      • یکپارچه‌سازی با NUnit
      • یکپارچه‌سازی با JUnit۵
      • یکپارچه‌سازی با Curiosity Quality Modeller
      • یکپارچه‌سازی با Ranorex
      • یکپارچه‌سازی با k۶
      • یکپارچه‌سازی با Postman
      • یکپارچه‌سازی با WebdriverIO
      • یکپارچه‌سازی با JMeter
      • یکپارچه‌سازی با Robot Framework (با استفاده از Robot parser)
      • یکپارچه‌سازی با Selenium
      • ادغام با testRigor
        • ادغام testRigor در TestRail
        • یکپارچه‌سازی با testRigor
    • ادغام ابزارهای CI/CD
      • یکپارچه‌سازی با Jenkins (freestyle)
      • یکپارچه‌سازی با GitHub Actions
      • یکپارچه‌سازی با Azure Pipelines
      • یکپارچه‌سازی با Bitbucket
      • ادغام با Travis CI
      • ادغام با CircleCI
      • یکپارچه‌سازی با Jenkins (pipeline)
      • یکپارچه‌سازی با GitLab CI/CD
    • اسکریپت های UI برای اتوماسیون تست
      • اسکریپت‌های UI برای اتوماسیون تست
  • راهنمای API
    • شروع کار با TestRail API
      • مدیریت خطا
      • اتصال API برای .NET (C#/VB.NET)
      • اتصال API برای Ruby
      • اتصال API برای Python
      • اتصال API برای PHP
      • آشنایی با TestRail API
      • API binding برای Java
      • دسترسی به TestRail API
    • موارد استفاده از API
      • Export کردن test caseها
      • خروجی گرفتن از نتایج تست
      • ایجاد test caseها
      • وارد کردن نتایج تست
      • معرفی موارد استفاده از API
    • مرجع API
      • BDDها
      • تست‌ها
      • متغیرها
      • کاربران
      • templateها
      • test suiteها
      • Statusها
      • گام‌های مشترک
      • section‌ها
      • test runها
      • فیلدهای نتیجه تست
      • نقش‌ها
      • گزارش‌ها و گزارش‌های بین‌پروژه‌ای
      • نتایج
      • Projectها
      • Priorityها
      • Milestoneها
      • test planها
      • گروه‌ها
      • Datasetها
      • Configurationها
      • انواع test case
      • test caseها
      • فیلدهای test case
      • پیوست‌ها
      • فیلدهای فیلتر پویا
      • برچسب‌ها
  • یادداشت‌های انتشار
    • آهنگ انتشار پیش فرض
      • TestRail ۱۰.۵.۱ پیش‌فرض (۱۰۰۱)
      • TestRail ۱۰.۴.۱ پیش‌فرض (۱۰۰۴)
      • TestRail ۱۰.۳.۱ Default (۱۰۰۹)
      • TestRail ۱۰.۱.۳ پیش‌فرض (۱۰۰۶)
      • TestRail ۱۰.۲.۰ مسیر انتشار پیش‌فرض (۱۰۷۶)
      • TestRail ۱۰.۱.۲ Default (۱۰۰۲)
      • TestRail ۱۰.۱.۱ مسیر انتشار پیش‌فرض (۱۰۱۱)
      • TestRail ۱۰.۰.۱ Default (۱۰۱۰)
      • TestRail ۱۰.۰.۰ پیش‌فرض (۱۰۶۸)
      • TestRail ۹.۸.۱ مسیر انتشار Default (۱۵۰۶)
      • TestRail ۹.۷.۲ Default (۱۰۰۳)
      • TestRail ۹.۷.۱ Default (۱۰۰۹)
      • TestRail ۹.۷.۰ پیش‌فرض (۱۰۳۶)
      • TestRail ۹.۶.۱ Default (۱۰۳۳)
      • TestRail ۹.۶.۰ پیش‌فرض (۱۰۳۲)
      • TestRail ۹.۵.۳ Default (۱۰۵۸)
      • TestRail ۹.۵.۲ Default (۱۰۴۷)
      • TestRail ۹.۵.۰ پیش‌فرض (۱۰۴۰)
      • TestRail ۹.۴.۰ Default (۱۰۵۴)
      • TestRail ۹.۳.۲ Default (۱۰۰۲)
      • TestRail ۹.۳.۱ پیش‌فرض (۱۰۲۰)
      • TestRail ۹.۳.۰ پیش‌فرض (۱۰۸۰)
      • TestRail ۹.۲.۱ پیش‌فرض (۱۰۱۰)
      • TestRail ۹.۲.۰ Default (۱۲۲۵)
      • TestRail ۹.۱.۲ Default (۱۰۲۸)
      • TestRail ۹.۱.۱ Default (۱۰۲۷)
      • TestRail ۹.۱.۰ Default (۱۰۲۵)
      • TestRail ۹.۰.۰ پیش‌فرض (۱۰۹۱)
      • TestRail ۹.۰.۰ Default (۱۰۵۷)
      • TestRail ۹.۰.۰ پیش‌فرض (۱۰۵۶)
    • سرور منتشر می شود
      • TestRail ۱۰.۴.۱.۱۰۰۴ Server
      • Docker Image برای TestRail ۱۰.۴.۱.۱۰۰۴
      • ایمیج Docker برای TestRail ۱۰.۳.۱.۱۰۰۹
      • نسخه Server TestRail ۱۰.۳.۱.۱۰۰۹
      • TestRail ۱۰.۲.۰.۱۰۷۶ Server
      • Docker Image نسخه TestRail ۱۰.۲.۰.۱۰۷۶
      • Docker Image نسخه TestRail ۱۰.۱.۴.۱۰۰۴
      • TestRail ۱۰.۱.۴.۱۰۰۴ Server
      • ایمیج Docker برای TestRail ۱۰.۰.۱.۱۰۱۰
      • TestRail Server ۱۰.۰.۱.۱۰۱۰
      • ایمیج Docker TestRail ۹.۸.۱.۱۵۰۶
      • نسخه Server TestRail ۹.۸.۱.۱۵۰۶
      • نسخه Server TestRail ۹.۶.۱.۱۰۳۳
      • ایمیج Docker نسخه TestRail ۹.۶.۱.۱۰۳۳
      • TestRail ۹.۵.۱.۱۰۴۲ Docker Image
      • TestRail ۹.۵.۱.۱۰۴۲ Server
      • Docker Image برای TestRail ۹.۴.۱.۱۰۰۱
      • نسخه Server TestRail ۹.۴.۱.۱۰۰۱
      • TestRail ۹.۳.۲.۱۰۰۲ Docker Image
      • TestRail ۹.۳.۲.۱۰۰۲ Server
      • Docker Image نسخه TestRail ۹.۳.۱.۱۰۲۰
      • TestRail Server ۹.۳.۱.۱۰۲۰
      • سرور TestRail ۹.۲.۱.۱۰۱۰
      • Docker Image مربوط به TestRail ۹.۲.۱.۱۰۱۰
      • TestRail ۹.۱.۱.۱۰۲۷ Docker Image
      • نسخه Server TestRail ۹.۱.۱.۱۰۲۷
      • TestRail ۹.۱.۰.۱۰۲۵ Docker Image
      • TestRail ۹.۱.۰.۱۰۲۵ Server
      • TestRail Server ۹.۰.۰.۱۰۹۱
      • Docker Image نسخه TestRail ۹.۰.۰.۱۰۹۱
      • Docker Image نسخه TestRail ۹.۰.۰.۱۰۵۷
      • سرور TestRail ۹.۰.۰.۱۰۵۷
      • TestRail Server ۸.۱.۰.۶۱۸۶
      • Docker Image TestRail ۸.۱.۰.۶۱۸۶
      • ایمیج Docker برای TestRail ۸.۱.۰.۶۱۶۵
      • نسخه Server TestRail ۸.۱.۰.۶۱۶۵
      • تصویر Docker TestRail ۸.۰.۶.۱۰۱۹
      • نسخه Server TestRail ۸.۰.۶.۱۰۱۹
      • Docker Image نسخه TestRail ۸.۰.۴.۷۰۳۶
      • سرور TestRail ۸.۰.۴.۷۰۳۶
      • نسخه Server TestRail ۸.۰.۱.۱۰۲۹
      • تصویر Docker برای TestRail ۸.۰.۱.۱۰۲۹
      • TestRail ۸.۰.۰.۱۰۸۹ Server
      • TestRail Server ۷.۵
    • انتشارات تاریخی
      • TestRail ۸.۱.۰ پیش‌فرض (۶۱۸۵)
      • TestRail ۸.۱.۰ مسیر انتشار Default (۶۱۶۵)
      • TestRail ۸.۱.۰ پیش‌فرض (۶۱۶۱)
      • TestRail ۸.۰.۶ پیش‌فرض (۱۰۲۹)
      • TestRail ۸.۰.۶ پیش‌فرض (۱۰۱۹)
      • TestRail ۸.۰.۶ پیش‌فرض (۱۰۱۴)
      • TestRail ۸.۰.۵ Default (۱۰۵۵)
      • TestRail ۸.۰.۵ – مسیر انتشار Default (۱۰۳۹)
      • TestRail ۸.۰.۴ Default (۷۰۳۶)
      • TestRail ۸.۰.۳ پیش‌فرض (۳۰۸۷)
      • TestRail ۸.۰.۳ Default (۳۰۷۰)
      • TestRail ۸.۰.۳ Default (۳۰۶۷)
      • TestRail ۸.۰.۳ Default (۳۰۶۶)
      • TestRail ۸.۰.۳ Default (۳۰۶۴)
      • TestRail ۸.۰.۳ پیش‌فرض (۳۰۶۳)
      • TestRail ۸.۰.۲ Default (۳۱۳۸)
      • TestRail ۸.۰.۱ Default (۱۰۳۳)
      • TestRail ۷.۶ پیش‌فرض
      • TestRail ۶.۶ پیش‌فرض
      • TestRail ۸.۰.۱ Default (۱۰۳۰)
      • TestRail ۵.۲ پیش‌فرض
      • TestRail ۵.۳ پیش‌فرض
      • TestRail ۵.۴ پیش‌فرض
      • TestRail ۵.۴.۱ پیش‌فرض
      • TestRail ۵.۵ پیش‌فرض
      • TestRail ۵.۶ پیش‌فرض
      • TestRail ۵.۷ پیش‌فرض
      • TestRail ۶.۰ پیش‌فرض
      • TestRail ۶.۱ پیش‌فرض
      • TestRail ۶.۲ پیش‌فرض
      • TestRail ۶.۳ پیش‌فرض
      • TestRail ۶.۴ پیش‌فرض
      • TestRail ۶.۵ پیش‌فرض
      • TestRail ۶.۷ پیش‌فرض
      • TestRail ۵.۱ پیش‌فرض
      • TestRail ۵.۰؛ add-on مدیریت تست برای JIRA ۷.۰ و به‌روزرسانی‌ها
      • TestRail ۵.۰ پیش‌فرض
      • TestRail ۴.۲ پیش‌فرض
      • TestRail ۴.۱ پیش‌فرض
      • TestRail ۴.۰ پیش‌فرض
      • TestRail ۳.۱ پیش‌فرض
      • TestRail ۳.۰ پیش‌فرض
      • TestRail ۲.۷.۱ پیش‌فرض
      • TestRail ۲.۷ پیش‌فرض
      • انتشار TestRail ۲.۶
      • TestRail ۲.۵ پیش‌فرض
      • TestRail ۷.۰ پیش‌فرض
      • پیش‌فرض TestRail ۷.۱
      • TestRail ۷.۲ پیش‌فرض
      • TestRail ۷.۳ پیش‌فرض
      • TestRail ۲.۴ پیش‌فرض
      • TestRail ۲.۳ پیش‌فرض
      • نسخه پیش‌فرض TestRail ۲.۲
      • TestRail ۲.۱ به‌صورت پیش‌فرض
      • TestRail ۲.۰ پیش‌فرض
      • TestRail ۱.۳ پیش‌فرض
      • TestRail ۱.۲ پیش‌فرض
      • TestRail ۱.۰ پیش‌فرض
      • TestRail ۱.۱ پیش‌فرض
      • TestRail Beta ۱.۰.۴
      • TestRail Beta ۱.۰.۳
      • TestRail Beta ۱.۰.۲
      • TestRail ۷.۴ پیش‌فرض
      • TestRail ۷.۵ پیش‌فرض
      • TestRail ۸.۰.۱ Default (۱۰۲۹)
      • TestRail ۷.۸.۰ پیش‌فرض (۱۱۴۱)
      • TestRail ۷.۸.۰ Default (۱۱۴۰)
      • دسترسی زودهنگام TestRail ۷.۷
      • TestRail ۷.۸.۰ نسخه Default (۱۱۱۶)
      • TestRail ۷.۸.۰ Default (۱۱۳۶)
      • TestRail ۷.۸.۰ Default (۱۰۵۹)
دسته‌ها را مشاهده کنید
  • خانه
  • مستندات
  • Testrail
  • Testrail
  • راهنمای سرور
  • سفارشی سازی ها و افزونه ها
  • افزونه های گزارش سفارشی
  • گزارش‌ها: ساخت report plugin سفارشی (۲/۳)

گزارش‌ها: ساخت report plugin سفارشی (۲/۳)

مدت زمان مطالعه: : 7 دقیقه

فرم گزارش معمولاً به دو بخش تقسیم می‌شود. بخش اول گزینه‌های سفارشی گزارش را پیکربندی می‌کند و ظاهر آن برای هر report plugin متفاوت است. بخش دوم گزینه‌های سیستمی (دسترسی، اعلان‌ها و زمان‌بندی) را تعریف می‌کند و برای همه report pluginها یکسان است. در این بخش توضیح می‌دهیم چطور فرم گزارش را مقداردهی کنید و چطور با استفاده از این گزینه‌ها، گزارش‌های تولیدشده را سفارشی‌سازی کنید.

گزینه‌های فرم #

همه report pluginهای داخلی TestRail تا حد زیادی قابل سفارشی‌سازی هستند و معمولاً می‌توانید scope، چیدمان و سطح جزئیاتی را که در گزارش‌های تولیدشده می‌آید تنظیم کنید. برای ساختاردهی و گروه‌بندی گزینه‌های مختلف، استفاده از tab control ایده خوبی است و معمولاً اولین قدم در طراحی یک فرم گزارش جدید هم همین است:

<div class="tabs">
  <div class="tab-header">
    <a href="javascript:void(0)" class="tab1 current" rel="1"
      onclick="App.Tabs.activate(this)">
        <?= lang('reports_tpr_form_details') ?></a>
    <a href="javascript:void(0)" class="tab2" rel="2"
      onclick="App.Tabs.activate(this)">
        <?= lang('reports_tpr_form_runs') ?></a>
  </div>
  <div class="tab-body tab-frame">
    <div class="tab tab1">
      <!-- The content of tab 1 goes here -->
    </div>
    <div class="tab tab2 hidden">
      <!-- The content of tab 2 goes here -->
    </div>
  </div>
</div>

برای report pluginهایی که بیش از یک هدف را پوشش می‌دهند، معمولاً بهتر است سطح جزئیات قابل تنظیم باشد. همان‌طور که به خاطر دارید، report plugin ما باید گزارش‌هایی را render کند که توزیع نتایج را برای نوع‌های test case و اولویت‌ها نشان می‌دهند. در این حالت، گزینه‌های مفید می‌توانند شامل کردن یا حذف کردن هرکدام از این موارد باشند.

برای این کار، به report.php برمی‌گردیم و functionهای مربوط به فرم را تکمیل می‌کنیم. با prepare_form شروع می‌کنیم؛ این function فرم را آماده می‌کند و گزینه‌های ما را ثبت می‌کند:

public function prepare_form($context, $validation)
{
  // Assign the validation rules for the fields on the form.
  $validation->add_rules(
    array(
      'custom_types_include' => array(
        'type' => 'bool',
        'default' => false
      ),
      'custom_priorities_include' => array(
        'type' => 'bool',
        'default' => false
      )
    )
  );
 
  if (request::is_post())
  {
    return;
  }
 
  // We assign the default values for the form depending on the
  // event. For 'add', we use the default values of this plugin.
  // For 'edit/rerun', we use the previously saved values of
  // the report/report job to initialize the form. Please note
  // that we prefix all fields in the form with 'custom_' and
  // that the storage format omits this prefix (validate_form).
 
  if ($context['event'] == 'add')
  {
    $defaults = array(
      'types_include' => true,
      'priorities_include' => true
    );
  }
  else
  {
    $defaults = $context['custom_options'];
  }
 
  foreach ($defaults as $field => $value)
  {
    $validation->set_default('custom_' . $field, $value);
  }
}

این function دو کار انجام می‌دهد. قدم اول این است که قوانین اعتبارسنجی گزینه‌ها را با استفاده از $validation object ارسال‌شده تنظیم کنیم؛ قدم دوم هم تنظیم مقدارهای پیش‌فرض برای این گزینه‌هاست. توجه کنید که چطور از $context parameter استفاده می‌کنیم تا مشخص کنیم گزارش جدیدی اضافه می‌شود یا یک گزارش موجود ویرایش/دوباره اجرا می‌شود، و مدیریت مقدارهای پیش‌فرض در این دو حالت چه تفاوتی دارد.

بعد می‌توانیم validate_form را تکمیل کنیم تا گزینه‌ها validate و برگردانده شوند:

public function validate_form($context, $input, $validation)
{
  // At least one detail entity option must be selected (types or
  // priorities).
  if (!$input['custom_types_include'] &&
    !$input['custom_priorities_include'])
  {
    $validation->add_error(
      lang('reports_tpr_form_details_include_required')
    );
 
    return false;
  }
 
  $values = array();
 
  static $fields = array(
    'types_include',
    'priorities_include'
  );
 
  foreach ($fields as $field)
  {
    $key = 'custom_' . $field;
    $values[$field] = arr::get($input, $key);
  }
 
  return $values;
}

سناریوهای ساده اعتبارسنجی از قبل با قوانین اعتبارسنجی‌ای که در prepare_form تعریف کرده‌ایم پوشش داده می‌شوند، و validate_form می‌تواند برای سناریوهای پیچیده‌تر استفاده شود. برای مثال، اینجا از آن استفاده می‌کنیم تا مطمئن شویم حداقل یک مورد در فرم انتخاب شده است (types یا priorities). سپس فقط گزینه‌های گزارش را همان‌طور که باید برای مرحله rendering ذخیره شوند برمی‌گردانیم.

بعد دوباره به form.php برمی‌گردیم و می‌توانیم کد مربوط را به فرم اضافه کنیم:

..
<!-- The content of tab 1 goes here -->
<p class="top"><?= lang('reports_tpr_form_details_include') ?></p>
<div class="checkbox form-checkbox" style="margin-left: 15px">
  <label>
    <?= lang('reports_tpr_form_details_include_types') ?>
    <input type="checkbox" id="custom_types_include"
      name="custom_types_include" value="1"
      <?= validation::get_checked('custom_types_include',1) ?> />
  </label>
</div>
<div class="checkbox" style="margin-left: 15px">
  <label>
    <?= lang('reports_tpr_form_details_include_priorities') ?>
    <input type="checkbox" id="custom_priorities_include"
      name="custom_priorities_include" value="1"
      <?= validation::get_checked('custom_priorities_include',1) ?> />
  </label>
</div>
..

form-options.png

کنترل‌های فرم #

با اینکه حتی فرم‌های پیچیده را هم می‌توان با روش گزینه‌های سفارشی ساخت، بسیاری از report pluginها گزینه‌های مشترکی دارند و منطقی نیست این گزینه‌ها را بارها پیاده‌سازی کنیم. خوشبختانه reporting engine در TestRail قابلیتی به نام form controls دارد که گزینه‌های رایج را پیاده‌سازی می‌کند و هم در report pluginهای داخلی و هم در report pluginهای سفارشی قابل استفاده مجدد است. برای انتخاب مجموعه‌ای از statusها، کاربران، test suiteها، test runها و موارد دیگر، کنترل‌های آماده وجود دارد.

این بخش توضیح می‌دهد چطور از form controls برای پیکربندی scope مربوط به report plugin استفاده کنید. در این مثال، منظور ما از scope همان test runهایی است که در گزارش‌های تولیدشده قرار می‌گیرند، و برای این کار از form controlهای انتخاب run و محدود کردن run استفاده می‌کنیم. کافی است به report.php برگردیم و کد زیر را اضافه یا اصلاح کنیم:

class Tests_property_results_report_plugin extends Report_plugin
{
  private $_controls;
 
  // The controls and options for those controls that are used on
  // the form of this report.
  private static $_control_schema = array(
    'runs_select' => array(
      'namespace' => 'custom_runs',
      'multiple_suites' => true
    ),
    'runs_limit' => array(
      'type' => 'limits_select',
      'namespace' => 'custom_runs',
      'min' => 0,
      'max' => 100,
      'default' => 25
    )
  );
 
  ..
 
  public function __construct()
  {
    parent::__construct();
    $this->_controls = $this->create_controls(
      self::$_control_schema
    );
  }
 
  public function prepare_form($context, $validation)
  {
    // Assign the validation rules for the controls used on the
    // form.
    $this->prepare_controls($this->_controls, $context, 
      $validation);
 
    ..
  }
 
  public function validate_form($context, $input, $validation)
  {
    ..
 
    // We begin with validating the controls used on the form.
    $values = $this->validate_controls(
      $this->_controls,
      $context,
      $input,
      $validation);
 
    if (!$values)
    {
      return false;
    }
 
    ..
  }
 
  public function render_form($context)
  {
    $params = array(
      'controls' => $this->_controls,
      'project' => $context['project']
    );
 
    ..
  }
}

در واقع، کنترل‌ها را در constructor و بر اساس schema تعریف‌شده می‌سازیم، آن‌ها را در prepare_form ثبت می‌کنیم و در validate_form اعتبارسنجی می‌کنیم. همچنین مطمئن می‌شویم کنترل‌ها به view فرم ارسال می‌شوند. حالا فقط باید کد front-end مربوط را در form.php:

//The content of tab 2 goes here
$report_obj->render_control(
  $controls,
  'runs_select',
  array(
    'top' => true,
    'project' => $project
  )
)

$report_obj->render_control(
  $controls,
  'runs_limit',
  array(
    'intro' => lang('report_plugins_runs_limit'),
    'limits' => array(5, 10, 25, 50, 100, 0)
  )
)

حالا وقتی در فرم گزارش به تب Test Suites & و Runs بروید، باید چیزی شبیه نمونه زیر ببینید:

form-controls.png

توجه داشته باشید که با اضافه کردن پشتیبانی از کنترل‌ها به methodهای فرم در report.php ، مقدارهای انتخاب‌شده کنترل‌ها اکنون به‌صورت خودکار در گزینه‌های گزارش ذخیره می‌شوند و از طریق پارامتر استاندارد $options هنگام render کردن گزارش در دسترس قرار می‌گیرند. این موضوع در بخش بعدی نشان داده می‌شود.

Report helper #

مشابه form controls، reporting engine در TestRail برای خواندن داده‌های واقعی از database، به queryهای رایج مرتبط با database هم دسترسی می‌دهد. این queryها از طریق methodهای object در چیزی به نام report helper در دسترس هستند. این helper از طریق $this→_helper در report.php و $report_helper در viewهای گزارش.

بسیاری از functionهای این helper برای استفاده همراه با کنترل‌های فرم طراحی شده‌اند؛ این موضوع در مثال بعدی روشن‌تر می‌شود. حالا به rendering واقعی گزارش می‌رویم (run method) و scope گزارش را تنظیم می‌کنیم:

public function run($context, $options)
{
  $project = $context['project'];
 
  // Read the test suites first.
  $suites = $this->_helper->get_suites_by_include(
    $project->id,
    $options['runs_suites_ids'],
    $options['runs_suites_include']
  );
 
  $suite_ids = obj::get_ids($suites);
 
  // We then get the actual list of test runs used, depending on
  // the report options.
  if ($suite_ids)
  {
    $runs = $this->_helper->get_runs_by_include(
      $project->id,
      $suite_ids,
      $options['runs_include'],
      $options['runs_ids'],
      $options['runs_filters'],
      null, // Active and completed
      $options['runs_limit'],
      $run_rels,
      $run_count
    );
  }
  else
  {
    $runs = array();
    $run_rels = array();
    $run_count = 0;
  }
 
  $run_ids = obj::get_ids($runs);
 
  ..
}

این کار از گزینه‌های کنترل‌های فرم (بخشی از $options parameter) استفاده می‌کند تا test suiteها و test runهای مرتبط با گزارش را از database بخواند. report helper methodهای بیشتری هم دارد؛ برای دیدن نمای کامل‌تر، بهتر است source code پلاگین‌های گزارش داخلی را در app/plugins/reports بررسی کنید.

مراحل بعدی #

در بخش آخر ادامه دهید تا یاد بگیرید چطور برای queryهای سفارشی مستقیماً به database دسترسی داشته باشید و داده‌های خود را render کنید:

  • ساخت plugin سفارشی گزارش (۳)
به‌روزرسانی شده در ۱۴۰۵-۰۴-۱۷

احساسات شما چیست؟

  • خوشحال
  • عادی
  • ناراحت

این مقاله را به اشتراک بگذارید:

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Reports: ساخت افزونه report سفارشی (۳/۳)گزارش‌ها: ساخت افزونه گزارش سفارشی (۱/۳)

دیدگاهتان را بنویسید لغو پاسخ

برای نوشتن دیدگاه باید وارد بشوید.

فهرست مطالب
  • گزینه‌های فرم
  • کنترل‌های فرم
  • Report helper
  • مراحل بعدی
تست ریل
  • درباره ما
  • خدمات
  • بلاگ
مطالب مفید
  • امنیت
  • مقالات
logo-samandehi

برای استفاده از مطالب تست ریل، داشتن «هدف غیرتجاری» و ذکر «منبع» کافیست. تمام حقوق اين وب‌سايت نیز برای وبسایت تست ریل است.

  • صفحه اصلی
  • درباره ما
  • تماس با ما