تست استاتیک در مقابل پویا
هر زمان که نرم افزار کامپایل می شود باید قبل از اجرا و در حین اجرای آن از نظر خطا و اشکال بررسی شود تا نرم افزار به خوبی اجرا شود و نتایج مورد انتظار را ارائه دهد. دو روش برای تست نرم افزارهای جدید نوشته شده به نام های Static Testing و Dynamic Testing وجود دارد. بسته به دقت مورد نیاز و بودجه موجود، یکی از اینها یا هر دوی آنها برای تست نرم افزار استفاده می شود. تست استاتیک قبل از کامپایل کامل نرم افزار انجام می شود و تست دینامیک تنها پس از کامپایل کامل نرم افزار و اجرا بر روی یک سیستم انجام می شود.
تست استاتیک
این نوع تست نرم افزار قبل از اجرای نرم افزار انجام می شود. تست استاتیک برای جستجوی خطاها در الگوریتم ها، کدها یا اسناد انجام می شود. خطاهای انجام شده در حین نوشتن نرم افزار با استفاده از تست استاتیک برای اصلاح بررسی می شود. این آزمایش توسط نویسنده یا توسعهدهنده نرمافزار یا آزمایشکنندگان انجام میشود و با قدم زدن در آن، بررسی بررسی کدها یا بازرسی بصری انجام میشود.
تست دینامیک
این نوع آزمایش زمانی انجام می شود که نرم افزار به طور کامل کامپایل و در سیستم بارگذاری شود. در تست Dynamic نرم افزار از نظر سازگاری پارامترهای ورودی و خروجی با استفاده از نرم افزار دیگری بررسی می شود. این تست بخشی از نرم افزار را در یک زمان تجزیه و تحلیل می کند تا باگ ها و خطاها را جستجو کند. نرم افزار مورد استفاده در تست Dynamic کدهای نرم افزار مورد آزمایش را بر اساس استانداردهای از پیش تعریف شده بررسی می کند و بررسی می کند که آیا نرم افزار تست شده نتیجه مطلوب را ارائه می دهد یا خیر.
به طور خلاصه:
تست استاتیک در مقابل آزمایش دینامیک
• تست استاتیک روشی علمی تر و جامع تر برای تشخیص خطاهای کد نرم افزار نسبت به تست دینامیک است.
• تست استاتیک بسیار سریعتر از آزمایش پویا است.
• تست استاتیک در یافتن اشکالات و خطاها بسیار برتر از آزمایش پویا است.
• از آنجایی که تست استاتیک خطاهای قبل از کامپایل نرم افزار را پیدا می کند و به راحتی قابل اصلاح است، بسیار ارزان تر از تست پویا است.
• مهمترین تفاوت بین این دو این است که تست استاتیک مانند جلوگیری از بیماری نرم افزار است و آزمایش پویا مانند درمان نرم افزاری است که تحت تأثیر بیماری قرار گرفته است.