#
TestRail ۸.۰.۱ برای همه مشتریان Server در دسترس است. مشتریانی که میخواهند به TestRail ۸.۰.۱ ارتقا دهند، میتوانند فایلهای نصب را از TestRail Billing Portal دانلود کنند.
در ادامه، اطلاعات لازم برای ارتقای یک نصب موجود TestRail به نسخه جدید، یعنی از ۷.۵.۳ به ۸.۰.۱، آمده است. برای ارتقای نصب TestRail خود، این مراحل را دنبال کنید.
از TestRail ۸.۰.۱ به بعد، PHP ۷.۴ دیگر پشتیبانی نمیشود. میتوانید روش ارتقای PHP را از اینجا ببینید.
تهیه نسخه پشتیبان #
اکیداً توصیه میشود از فایلهای نصب TestRail و database مربوط به TestRail نسخه پشتیبان تهیه کنید و سپس به نسخه جدیدتر ارتقا دهید. اگر در فرایند ارتقا مشکلی پیش بیاید، backup تنها راه بازگرداندن تغییرات و برگشت به نصب قبلی و سالم شماست. توصیه میکنیم بهصورت منظم از نصب TestRail و database خود backup بگیرید، بهخصوص قبل از ارتقا به نسخه جدیدتر.
پیشنیازها #
قبل از شروع ارتقای TestRail، لطفاً مستندات پیشنیازها و دستورالعملهای مخصوص سیستمعامل، یعنی Windows یا Linux، را بررسی کنید. وابستگیهای نرمافزاری مانند PHP و SQL ممکن است در طول زمان تغییر کنند؛ بنابراین مهم است پیش از بهروزرسانی نرمافزار TestRail، این پیشنیازها را مرور کنید.
ارتقای وابستگیها #
PHP 8.1 #
TestRail ۸.۰ به PHP ۸.۱ نیاز دارد. اولین مرحله در این ارتقا، نصب PHP ۸.۱ است.
دانلود کنید: فایلهای رسمی PHP از اینجا.
از سال ۲۰۲۳، VS16 x64 Non Thread Safe نسخه پیشنهادی برای دانلود است، چون در مستندات نصب از همین نسخه استفاده میشود.

پس از کامل شدن دانلود، فایلهای فشرده PHP را در مسیر زیر extract کنید: C:\php\ روی سیستم میزبان.
بخش Environment Variables را ویرایش کنید و یک System variable جدید برای Path اضافه کنید: C:\php.

حالا Handler Mappings را در IIS با مسیر جدید PHP بهروزرسانی کنید. به IIS Manager بروید، روی server host کلیک کنید، سپس روی Handler Mappings کلیک کنید و Add Module Mapping را انتخاب کنید.

در پنجره جدید، همه فیلدها را دقیقاً مطابق اطلاعاتی که در تصویر زیر نشان داده شده پر کنید و سپس روی OK کلیک کنید.

در IIS Manager به host سرور برگردید و این بار روی Default Document کلیک کنید. در پنل Actions روی Add کلیک کنید.

در فیلد Name مقدار Index.php را وارد کنید و روی OK کلیک کنید. سپس دوباره روی Add کلیک کنید و این بار در فیلد Name مقدار Default.php را وارد کنید و روی OK کلیک کنید.

#
برای اجرای diagnostics اطلاعات PHP و بررسی نسخه PHP، دستورالعملهای این بخش را دنبال کنید.
افزونههای PHP #
برای استفاده از TestRail در ویندوز همراه با database از نوع SQL Server، افزونههای PHP زیر لازم هستند:
- افزونه cassandra برای دسترسی به database نوع NoSQL
- افزونه gd در PHP برای تولید نمودارها
- افزونه PHP با نام sqlsrv_81_nts_x64 برای دسترسی به databaseهای SQL Server
- افزونه pdo_mysql در PHP برای دسترسی به database
- افزونه fileinfo در PHP برای تشخیص نوع فایل و encoding
- افزونه imagick در PHP برای کار با تصاویر
- افزونه mbstring در PHP برای کار با رشتههای Unicode
- افزونه curl در PHP برای بررسی updateها و موارد مشابه
- افزونه openssl در PHP برای مدیریت اتصالهای SSL
- ionCube PHP Loader برای decode کردن فایلهای PHP مربوط به TestRail
برای دانلود درایورهای PHP مایکروسافت برای SQL Server از اینجا ، و روی Download Microsoft Drivers for PHP for SQL Server (Windows).
پس از استخراج فایلها، فایلهای زیر را در دایرکتوری C:\php\ext\ کپی کنید:
- php_pdo_sqlsrv_81_nts_x64.dll
- sqlsrv_81_nts_x64
برای نصب این extensionها، موارد زیر را به فایلهای php.ini اضافه کنید:
- extension=pdo_sqlsrv_81_nts_x64
- extension=sqlsrv_81_nts_x64
برای نصب extension مربوط به imagick، دستورالعملهای رسمی را دنبال کنید documentation.
#
به دستورالعملهای نصب Cassandra مراجعه کنید تا جزئیات بیشتری درباره پیشنیازهای Cassandra و نصب/پیکربندی کامل آن ببینید.
آخرین PHP extension موردنیاز، ionCube PHP Loader رایگان است. میتوانید ionCube loader for Windows را از اینجا دانلود کنید.
برای این روش نصب به فایل «ioncube_loader_win_8.۱.dll» نیاز دارید که با دانلود Windows VC16 (Non-TS) (64 bits) در فایل zip با نام ioncube_loaders_win_nonts_vc16_x86-۶۴.zip قرار دارد. همه فایلها را روی سرور خود استخراج کنید و extension مربوط به loader را در دایرکتوری ext مربوط به PHP کپی کنید (معمولاً C:\php\ext\). سپس با اضافه کردن خط زیر به فایل PHP.ini، این extension را فعال کنید. این فایل معمولاً در دایرکتوری نصب، یعنی C:\php\، قرار دارد:
zend_extension = "C:\php\ext\ioncube_loader_win_8.1.dll"
برای بررسی اینکه ionCube loader extension با موفقیت نصب شده است، دستور php -v را در Windows Command Prompt اجرا کنید. برای اجرای این دستور باید وارد دایرکتوری نصب PHP شوید.
اگر خروجی php -v چیزی شبیه نمونه زیر باشد، ionCube loader extension با موفقیت نصب شده است. به خط ionCube PHP Loader توجه کنید:
PHP 8.1.14 (cli) (built: Jan 4 2023 12:24:57) (NTS Visual C++ 2019 x64)
Copyright (c) The PHP Group
Zend Engine v4.1.14, Copyright (c) Zend Technologies
with the ionCube PHP Loader v12.0.5, Copyright (c) 2002-2022, by ionCube Ltd.
#
برای اینکه IIS بتواند این extension را load کند، ممکن است لازم باشد permission فایل extension مربوط به ionCube را تغییر دهید. برای این کار، در Explorer روی فایل راستکلیک کنید، Properties را انتخاب کنید، به تب Security بروید و گروه Users را اضافه کنید.
بیشتر extensionها باید بهصورت خودکار اضافه شوند، اما باید مراحل اضافی مربوط به Cassandra، IonCube و imagick را هم انجام دهید. اگر PHP را دستی نصب کردهاید، ممکن است لازم باشد extensionهای موردنیاز را در فایل PHP.ini به این شکل فعال کنید:
zend_extension = "C:\php\ext\ioncube_loader_win_8.1.dll"
extension=cassandra
extension=gd
extension=fileinfo
extension=imagick
extension=mbstring
extension=curl
extension=openssl
extension=pdo_sqlsrv_81_nts_x64
extension=sqlsrv_81_nts_x64
برای reload کردن PHP، وبسرور IIS را restart کنید. سادهترین راه این است که World Wide Web Publishing Windows service را restart کنید. برای این کار، برنامه Services را از Administrative Tools باز کنید و این service را restart کنید. توجه داشته باشید که با این کار همه IIS application poolها و وبسایتها restart میشوند. اگر وبسایتها و برنامههای دیگری را هم روی این سرور میزبانی میکنید، بهتر است فقط application pool مربوطه را restart کنید.
جایگزین کردن فایلهای نصب #
برای ارتقای نصب TestRail، فایلهای نصب TestRail را روی وبسرور خود upload و extract کنید و فایلهای نسخه جدید TestRail را روی فایلهای نصب فعلی کپی کنید. میتوانید همه فایلها را جایگزین کنید، چون فایلهایی که مخصوص نصب شما هستند، مثل فایل config.php، در آرشیو نصب قرار ندارند.
#
بعضی از تنظیمات وبسرور ممکن است وقتی وبسرور فعال است، اجازه overwrite شدن فایلها را ندهند. قبل از جایگزین کردن فایلهای نصب TestRail، باید وبسرور را متوقف کنید. این مورد بیشتر در سیستمهای Windows/IIS رخ میدهد؛ بنابراین اگر هنگام ارتقا با مشکل روبهرو شدید، وبسرور را متوقف کنید و دوباره فایلها را overwrite کنید.
پس از جایگزین شدن فایلها، instance ارتقا داده شده است. برای تأیید موفقیتآمیز بودن ارتقا، از طریق مرورگر وب وارد instance شوید؛ معمولاً با آدرسی مثل «http://localhost/testrail/» یا مشابه آن.
MAX_CHART_ROWS #
اگر کاربران بدون اضافه کردن MAX_CHART_ROWS به فایل config.php به نسخه ۸.۰ ارتقا دهند، خطایی شبیه نمونه زیر نمایش داده میشود:

برای رفع این مشکل، این constant را اضافه کنید:
/*
|--------------------------------------------------------------------
| OPTIMIZATIONS
|--------------------------------------------------------------------
|
| You can choose whether to optimize the delivery of style sheet and
| javascript files and the handling of language files. The following
| optimization settings are available:
|
| DEPLOY_OPTIMIZE_LANG: If enabled, TestRail uses a single combined
| language file named 'all_lang' instead of
| multiple language files.
|
| DEPLOY_OPTIMIZE_CSS: If enabled, a single combined style sheet
| is served to the clients.
|
| DEPLOY_OPTIMIZE_JS: If enabled, a single combined javascript
| file is served to the clients.
*/
define('DEPLOY_OPTIMIZE_LANG', true);
define('DEPLOY_OPTIMIZE_CSS', true);
define('DEPLOY_OPTIMIZE_JS', true);
define('MAX_CHART_ROWS', 150000);

