تست یکپارچه‌سازی

تست یکپارچه‌سازی  (گاهی اوقات به عنوان یکپارچه سازی و تست به اختصار I & T نامیده می‌شود) یک تست نرم‌افزاری است که در آن ماژول‌های نرم‌افزاری منحصر به فرد به عنوان یک گروه ترکیب و آزمایش می‌شوند. تست یکپارچه سازی برای ارزیابی انطباق یک سیستم یا یک جزء(component) با نیازمندی‌های عملکردی مشخص انجام شده‌است.

تست یکپارچه سازی، پس از تست واحد(Unit testing) و قبل از تست اعتبار سنجی (Validation testing) انجام می‌شود. تست یکپارچه سازی ماژول‌هایی را که روی آنها تست واحد(Unit testing) انجام شده‌است را به عنوان ورودی می‌گیرد و آنها را در گروه‌های بزرگتری دسته‌بندی می‌کند و تست‌های تعریف شده را روی آن گروه‌ها انجام می‌دهد. خروجی آن، سیستم یکپارچه شده‌است که آماده برای تست سیستم (System testing) است.

نگاهی نزدیک تر 
برخی از انواع مختلف تست یکپارچه سازی عبارتند از: انفجار بزرگ (big-bang)، ریسکی(risky-hardest)، بالا به پایین(top-down) و پایین به بالا(bottom-up).

سایر الگوهای یکپارچه سازی شامل: ادغام همکاری(collaboration integration)، یکپارچگی ستون فقرات(backbone integration)، یکپارچگی لایه ای(layer integration)، یکپارچگی سرویس کلاینت-سرور(client-server integration)، یکپارچگی خدمات توزیع شده و یکپارچگی فرکانس یالا(high-frequency integration).

در روش انفجار بزرگ، بسیاری از ماژول‌های توسعه یافته با هم به یک سیستم نرم‌افزاری کامل یا بخش عمده سیستم متصل می‌شوند و سپس برای آزمایش یکپارچه سازی مورد استفاده قرار می‌گیرند. این روش برای صرفه جویی در زمان در فرایند تست یکپارچه بسیار مؤثر است. با این حال، اگر موارد آزمون و نتایج آنها به درستی ثبت نشده باشد، تمام روند ادغام پیچیده‌تر خواهد شد و ممکن است تیم تست را از دستیابی به هدف تست یکپارچه جلوگیری کند.

تست پایین به بالا(Bottom-up testing)روشی برای آزمایش یکپارچه سازی است که در آن اجزایی که در پایین‌ترین سطح هستند، تست می‌شوند و سپس برای تسهیل تست اجزای سطح بالاتر مورد استفاده قرار می‌گیرند. این روند تا زمانی که مولفه بالای سلسله مراتب آزمایش شود، تکرار می‌شود. تمام ماژول‌های سطح پایین یا روال‌های سطح پایین یا توابع سطح پایین ابتدا یکپارچه می‌شوند و سپس آزمایش می‌شوند. پس از آزمایش یکپارچگی ماژول‌های یکپارچه شده سطح پایین، سطح بعدی ماژول‌ها شکل می‌گیرد و می‌تواند برای آزمایش یکپارچه سازی استفاده شود. این رویکرد تنها زمانی مفید است که تمام یا بیشتر ماژول‌های توسعهٔ سطح مشابه آماده باشند. این روش همچنین به تعیین سطوح نرم‌افزار توسعه یافته کمک می‌کند.

تست بالا به پایین (Top-down test)یک رویکرد برای تست یکپارچه است که در آن ماژولهای مجتمع بالا مورد آزمایش قرار می‌گیرند و ماژول گام به گام تا پایان ماژول مربوط مورد آزمایش قرار می‌گیرد.

تست ساندویچ(Sandwich testing) یک رویکرد برای ترکیب تست بالا به پایین با تست پایین به بالا است.

یکی از محدودیت‌های این نوع تست این است که هر شرایطی که در آزمایش‌های یکپارچه سازی مشخص نشده، خارج از تأیید اجرای اشیاء طراحی شده، به‌طور کلی آزمایش نمی‌شود.

منابع 
en.wikipedia.org/wiki/Integration_testing

تست سخت‌افزار
تست نرم‌افزار
ویکی‌سازی رباتیک