تست دود چیست؟
تست دود (Smoke Testing) یک تست مقدماتی است که بر روی ساخت (Build) اولیه نرم افزار انجام می شود تا ثبات و آمادگی نرم افزار را برای بررسی روند و فعالیت های بعدی تست مورد بررسی قرار دهد.
به تست دود تست ساختار نیز گفته می شود زیرا در وهله ی اول با تست کردن نرم افزار، ناپایداری نرم افزار مشخص شده و برای تست های بیشتر، نسخه رد می شود.
اصولاً این یک نوع تست غیر جامع است که هیچ تست عمیقی را شامل نمی شود ، بلکه عملکردهای اساسی را در نظر می گیرد و مورد ارزیابی قرار می دهد ، مثلا نصب و اجرای برنامه و تست کردن فانکشن های اساسی نرم افزار و…. مورد بررسی قرار میگیرند.
بنابراین ، قبل از پیشروی در تست نرم افزار پیش رو ، برای ما بسیار مهم است که یک بررسی اجمالی از ساختار نرم افزار داشته باشیم تا مفهوم تست دود برای شما آسان و قابل درک باشد.
قبل از هر توضیحی ، اجازه دهید یک مرور کلی درباره ساختار (Build) نرم افزار داشته باشیم تا مفهوم تست دود برای شما آسان تر و واضح تر شود.
ساختار نرم افزار چیست؟
Build، یک نسخه (ورژن) از اپلیکیشن است که هنوز در حال تست می باشد.
به عبارت ساده تر ، Build بخشی از اپلیکیشن می باشد که از ادغام کد اجرایی یکپارچه تهیه شده است و پاسخگو برای یک ویژگی (ها) خاص در یک محصول نرم افزاری است.
ایده اصلی تست دود ، بررسی عملکرد ویژگیهای اساسی قابل توجه در ساخت نرم افزار است.
ویژگی های برجسته ی تست دود
1- تست دود بر روی ساختار اولیه نرم افزار انجام می شود و همچنین با نام Test Verification Test نیز شناخته می شود.
2- تست دود بیش از ساخت اولیه نرم افزار انجام می شود تا خرابی های ساده در عملکرد محصول نرم افزاری را نشان دهد.
3- مانند یک دروازه بان عمل می کند و ساخت را بر اساس میزان ثبات آن می پذیرد و یا رد می کند.
4- فقط عملکردهای اساسی و بدون جزئیات دقیق در تست دود تست می شوند.
5- رد ساختار ناپایدار موجب صرفه جویی در وقت و تلاش تیم QA می شود.
6- تست دود زیر مجموعه تست رگرسیون (Regression Testing) است و جایگزین آن نیست.
7- از آنجا که هیچ تست عمیقی نیاز نیست که انجام شود و فقط عملکردهای اصلی برنامه تست می شود بنابراین ممکن است توسط دولپر یا تستر این تست انجام شود.
8- تست دود ممکن است یا با استفاده از روش دستی یا با کمک اتوماسیون انجام شود.
9- تست دود بسیار در پیدا کردن سریع نقایص نرم افزار مفید و موثر است.
10- عموماً برای تست یکپارچه سازی (Integration Testing) ، تست سیستم (System Testing) و تست پذیرش (Acceptance Testing) کاربرد دارد.
11-می توان آن را به عنوان تست عملکرد (Functional Testing) یا تست واحد (Unit Test) طبقه بندی کرد.
#آموزش_تست_اپلیکیشن
#تست_اپلیکیشن
#تست_نرم_افزار
#تست_اپ_اندروید
#تست_اپ_آی_او_اس