'\" t .\" Title: iscsi-test-cu .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.78.1 .\" Date: 02/16/2015 .\" Manual: iscsi-test-cu: iSCSI/SCSI protocol test suite .\" Source: iscsi-test-cu .\" Language: English .\" .TH "ISCSI\-TEST\-CU" "1" "02/16/2015" "iscsi\-test\-cu" "iscsi\-test\-cu: iSCSI/SCSI pr" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" iscsi-test-cu \- مجموعه آزمون پروتکل‌های iSCSI/SCSI .SH "خلاصه دستور (SYNOPSIS)" .HP \w'\fBiscsi\-test\-cu\ [\ OPTIONS\ ]\ \fR\ 'u \fBiscsi\-test\-cu [ OPTIONS ] \fR .HP \w'\fBiscsi\-test\-cu\fR\ 'u \fBiscsi\-test\-cu\fR [\-i\ \-\-initiator\-name=] [\-I\ \-\-initiator\-name\-2=] [\-l\ \-\-list] [\-t\ \-\-test=|*[\&.|*[\&.|*]]] [\-d\ \-\-dataloss] [\-s\ \-\-allow\-sanitize] [\-V\ \-\-Verbose\-scsi] [\-x\ \-\-xml] [\-?\ \-\-help] .SH "توضیحات (DESCRIPTION)" .PP دستور iscsi\-test\-cu یک مجموعه آزمون برای iSCSI/SCSI است\&. .SH "قالب نشانی درگاه ISCSI (ISCSI PORTAL URL FORMAT)" .PP قالب درگاه iSCSI به‌صورت \*(Aqiscsi://[[%]@][:]//\*(Aq است\&. .PP گزینهٔ Port درگاه TCP روی هدف (target) برای اتصال است\&. مقدار پیش‌فرض 3260 است\&. .PP نام کاربری (username) و گذرواژه (password) تنها زمانی مورد نیاز هستند که هدف نیاز به احراز هویت CHAP داشته باشد\&. به‌صورت اختیاری می‌توانید نام کاربری و گذرواژه را از طریق متغیرهای محیطی LIBISCSI_CHAP_USERNAME و LIBISCSI_CHAP_PASSWORD مشخص کنید\&. .PP میزبان (Host) را می‌توان به‌صورت نام میزبان، نشانی IPv4 یا نشانی IPv6 مشخص کرد\&. مثال‌ها: .sp .if n \{\ .RS 4 .\} .nf iscsi://192\&.0\&.2\&.1/iqn\&.ronnie\&.test/1 iscsi://[2001:DB8::1]:3261/iqn\&.ronnie\&.test/1 iscsi://ronnie%password@iscsi\&.example\&.com/iqn\&.ronnie\&.test/1 .fi .if n \{\ .RE .\} .sp .SH "گزینه‌ها (OPTIONS)" .PP \-i \-\-initiator\-name= .RS 4 همهٔ آزمون‌ها حداقل از یک اتصال iSCSI به هدف استفاده می‌کنند و این نام آغازگر (initiator) است که برای آن نشست اولیه استفاده می‌شود و مقدار پیش‌فرض آن \*(Aqiqn\&.2007\-10\&.com\&.github:sahlberg:libiscsi:iscsi\-test\*(Aq است\&. .sp از این آرگومان برای تغییر نام آغازگر مورد استفاده در نشست اولیه استفاده می‌شود\&. .RE .PP \-I \-\-initiator\-name\-2= .RS 4 برخی آزمون‌ها از اتصال دومی به هدف استفاده می‌کنند، مانند \*(Aqit nexus loss tests\*(Aq\&. نام پیش‌فرض استفاده‌شده برای این اتصال دوم \*(Aqiqn\&.2007\-10\&.com\&.github:sahlberg:libiscsi:iscsi\-test\-2\*(Aq است\&. .sp از این آرگومان برای تغییر نام آغازگر مورد استفاده در نشست ثانویه استفاده می‌شود\&. .RE .PP \-l \-\-list .RS 4 این آرگومان تمام آزمون‌های موجود را فهرست می‌کند\&. .sp آزمون‌ها به «خانواده‌ها» (\*(Aqfamilies\*(Aq)، «مجموعه‌ها» (\*(Aqsuites\*(Aq) و «آزمون‌ها» (\*(Aqtests\*(Aq تقسیم شده و با \*(Aq\&.\*(Aq از یکدیگر جدا می‌شوند\&. .sp .if n \{\ .RS 4 .\} .nf iscsi\-test\-cu \-l ALL ALL\&.CompareAndWrite ALL\&.CompareAndWrite\&.Simple ALL\&.CompareAndWrite\&.Miscompare ALL\&.GetLBAStatus ALL\&.GetLBAStatus\&.Simple ALL\&.GetLBAStatus\&.BeyondEol \&.\&.\&. .fi .if n \{\ .RE .\} .sp .RE .PP \-t \-\-test=|*[\&.|*[\&.|*]] .RS 4 این آرگومان فهرستی جداشده با کاما از عبارت‌های آزمون برای اجرا را مشخص می‌کند\&. اگر این آرگومان حذف شود، همه آزمون‌ها اجرا خواهند شد\&. همچنین می‌توانید فقط نام فایلی را مشخص کنید تا فهرست آزمون‌ها از آن خوانده شود\&. .sp .if n \{\ .RS 4 .\} .nf برای اجرای همهٔ آزمون‌ها: iscsi\-test\-cu \-\-test=ALL iscsi://192\&.0\&.2\&.1/iqn\&.ronnie/test/1 برای اجرای مجموعه آزمون READ16: iscsi\-test\-cu \-\-test=SCSI\&.Read16\&.* \e iscsi://192\&.0\&.2\&.1/iqn\&.ronnie/test/1 برای اجرای تنها یک آزمون مشخص: iscsi\-test\-cu \-\-test=iSCSI\&.iSCSIResiduals\&.Read10Invalid \e iscsi://192\&.0\&.2\&.1/iqn\&.ronnie/test/1 اجرای همه آزمون‌ها در مجموعه TestUnitReady و همچنین آزمون Read16.Flags: iscsi\-test\-cu \-\-test=SCSI\&.TestUnitReady\&.*,SCSI\&.Read16\&.Flags \e iscsi://192\&.0\&.2\&.1/iqn\&.ronnie/test/1 اجرای همه آزمون‌های فهرست‌شده در فایل ~/tests\-to\-run: iscsi\-test\-cu \-\-test=~/tests\-to\-run iscsi://192\&.0\&.2\&.1/iqn\&.ronnie/test/1 .fi .if n \{\ .RE .\} .sp .RE .PP \-d \-\-dataloss .RS 4 به‌طور پیش‌فرض این ابزار تنها آزمون‌های غیرمخرب را اجرا می‌کند\&. برای آزمودن دستورهایی که داده‌ها را تغییر می‌دهند (مانند آزمون‌های Write*) باید پرچم \-\-dataloss را مشخص کنید\&. .sp آزمون‌هایی که به \-\-dataloss نیاز دارند داده‌های روی LUN را رونویسی خواهند کرد و هنگام اجرای این آزمون‌ها تمامی اطلاعات روی آن LUN از بین خواهد رفت\&. .RE .PP \-s \-\-allow\-sanitize .RS 4 انتظار می‌رود کد دستوری (opcode) در SBC SANITIZE زمان قابل توجهی تا تکمیل شدن نیاز داشته باشد و بنابراین آزمون‌های مربوط به این کد دستوری برای اجراهای آزمایشی معمول مناسب نیستند\&. .sp به‌طور پیش‌فرض از تمام آزمون‌های SBC SANITIZE صرف‌نظر می‌شود\&. اگر واقعاً قصد دارید آزمون‌های SANITIZE را انجام دهید از این آرگومان استفاده کنید\&. .RE .PP \-V \-\-Verbose\-scsi .RS 4 هدف این آزمون‌ها خودتوضیح‌دهنده بودن است\&. با مشخص کردن پرچم \-V، ابزار آزمون تمامی دستورهای SCSI ارسال‌شده به دستگاه، آرگومان‌ها و نتیجهٔ مورد انتظار را چاپ می‌کند\&. .sp اگر آزمونی شکست خورد، آن آزمون را با آرگومان \-V مجدداً اجرا کنید تا علت شکست آن را مشاهده کنید\&. اگر آن هم کمکی نکرد، زمان آن است که wireshark را اجرا کرده و بررسی کنید چه رخ داده است\&. .sp .if n \{\ .RS 4 .\} .nf iscsi\-test\-cu \-\-test SCSI\&.Read10\&.BeyondEol iscsi://192\&.0\&.2\&.1/iqn\&.ronnie\&.test/1 \-V Suite: Read10 Test: BeyondEol \&.\&.\&. Test READ10 1\-256 blocks one block beyond the end Send READ10 (Expecting LBA_OUT_OF_RANGE) LBA:2097152 blocks:1 rdprotect:0 dpo:0 fua:0 fua_nv:0 group:0 [OK] READ10 returned ILLEGAL_REQUEST/LBA_OUT_OF_RANGE\&. \&.\&.\&. .fi .if n \{\ .RE .\} .sp .RE .PP \-x \-\-xml .RS 4 این گزینه نتایج آزمون را در قالبی ماشین‌خوان برای آزمون‌های خودکار تولید می‌کند\&. .sp ابزار iscsi\-test\-cu می‌تواند نتایج آزمون را به‌صورت ماشین‌خوان برای استفاده در کارساز CI تولید کند\&. از گزینه \-\-xml به همراه هر مجموعه آزمونی استفاده کنید تا فایلی به نام CUnitAutomated\-Results\&.xml در دایرکتوری کاری جاری شما نوشته شود\&. این نتایج را می‌توان با استفاده از این اسکریپت به قالب JUnit تبدیل کرد: http://git\&.cyrusimap\&.org/cyrus\-imapd/plain/cunit/cunit\-to\-junit\&.pl .sp وضعیت خروجی اسکریپت نشان‌دهنده موفقیت‌آمیز بودن یا نبودن آزمون‌ها است\&. اگر ترجیح می‌دهید اسکریپت وضعیتی را برگرداند که نشان دهد تبدیل cunit به junit موفق بوده است یا خیر، می‌توانید اسکریپت را با این تغییر وصله کنید: .sp .if n \{\ .RS 4 .\} .nf diff \-\-git a/cunit\-to\-junit\&.pl\&.orig b/cunit\-to\-junit\&.pl index 7cf9320\&.\&.9182ff0 100644 \-\-\- a/cunit\-to\-junit\&.pl\&.orig +++ b/cunit\-to\-junit\&.pl @@ \-226,4 +226,4 @@ foreach my $s (@suites) } print "$0: ran $nrun tests, $nfailed failed\en"; \-exit(1) if ($nfailed > 0); +#exit(1) if ($nfailed > 0); .fi .if n \{\ .RE .\} .sp .RE .PP \-? \-\-help .RS 4 نمایش متن راهنمای اولیه\&. .RE .SH "همچنین ببینید (SEE ALSO)" .PP \m[blue]\fB\%http://github.com/sahlberg/libiscsi\fR\m[]