تستوسعه

تست و برنامه نویسی شخصی

تستوسعه

تست و برنامه نویسی شخصی

مفاهیم تست های Validation و Verification

سه شنبه, ۲۶ مرداد ۱۴۰۰، ۰۲:۴۹ ق.ظ

Verification testing چیست؟

این تست به منظور ارزیابی یک محصول نرم افزاری مطابق الزامات ، مشخصات ، یا شرایط تحمیلی و … انجام میشه.

Validation testing چیست؟

این تست به منظور مطمئن شدن از این هست که محصول نرم افزاری ما ، خدمات و یا سیستم پاسخگوی نیاز مشتریان و کاربران باشد.

۰ نظر موافقین ۰ مخالفین ۰ ۲۶ مرداد ۰۰ ، ۰۲:۴۹
نسیم ناصری

اهمیت تست نرم افزار

سه شنبه, ۲۶ مرداد ۱۴۰۰، ۰۲:۴۴ ق.ظ

مسلما محصول نرم افزاری ای ک توسعه پیدا میکنه نیاز به تست داره تا خطاهای فنیش در بیاد، و بعد نیاز به تحلیلگر داره تا بررسی بشه که این محصول دقیقا همون محصولیه که ذی نفع میخواد یا نه، بعد دوباره نیاز به تست داره تا ببینیم آیا مواردی که تحلیلگر مدنظرش هست در محصول رعایت شده یا خیر و البته بعد از تحویل به مشتری و اتمام کار و ادامه ی فرآیند توسعه ی محصول نرم افزاری برای ادامه ی کار هم ، همین نسخه ی قبلی مجددا نیاز به تست داره که ببینیم با اضافه شدن فیچرهای جدید به محصول و تغییرات برای نسخه ی جدیدمحصول، مشکلی برای موارد قبلی که موردتایید بودن و ازشون عبور کردیم پیش نیومده باشه.

 

پس میبینیم با یه حساب کلی، تست توی چرخه ی نرم افزار نقش خیلی خیلی خیلی مهمی ایفا میکنه و مرتبا هم در حال تکرار شدنه.

۰ نظر موافقین ۰ مخالفین ۰ ۲۶ مرداد ۰۰ ، ۰۲:۴۴
نسیم ناصری

محیط مناسب برای پیاده سازی تست خودکار

سه شنبه, ۲۶ مرداد ۱۴۰۰، ۰۲:۰۴ ق.ظ

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

 

به طور کلی برای محیط تست، یسری موارد باید بررسی شه که در زیر عنوان کردم:

سیستم‌ها و برنامه‌ها

داده‌های تست(Test Data)

سرور پایگاه داده(Database server)

محیط Front-end Running و …

 

چند نمونه ازچالش‌ها هنگام ستاپ یک محیط تست:

محیط از راه دور(Remote Environment)

تنظیم زمان دقیق

استفاده مشترک توسط تیم‌ها

پیکربندی تست‌های پیچیده

برنامه‌ریزی ناکارآمد برای استفاده از منابع

۰ نظر موافقین ۰ مخالفین ۰ ۲۶ مرداد ۰۰ ، ۰۲:۰۴
نسیم ناصری

Automation Test

سه شنبه, ۱۴ آبان ۱۳۹۸، ۱۲:۳۵ ب.ظ

تست خودکار(اتوماتیک) :

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

نرم‌افزار اتوماسیون همچنین می‌تونه Test Dataها  رو در سیستم تحت تست وارد کرده، Expected Result و Actual Result رو مقایسه کرده و Test Report رو در قالب pass/fail تست کیس ها به صورت دقیق تولید کنه. 

ابزار تست هم پولیش هست هم اپن سورس و رایگانش . 

میشه یه playlist  ایجاد کرد و مجموعه ای از تست کیس ها که مطابق با بیزینس برنامه تشکیل یه پروسه میدن رو داخلش قرار داد و هرسری اجرا کرد که به این مجموع تست کیس ها برای یه فرآیند test suite  میگن .

وقتی که تست اتوماتیک نوشته میشه، دیگه به هیچ مداخله انسانی نیاز نیست و اون تست کیس بدون این که کاری دستی انجام بشه اتوماتیک اجرا خواهد شد. 

هدف از اتوماتیک کردن تست، کمک به تست رگرسیونه چوت regression test  زمان زیادی میبره هرچی که نرم افزار بزرگتر میشه و فیچرهای جدید بهش اضافه میشه .

به جز این هم خیلی از تست ها بدون ابزار امکان انجام شدنش نیست مثل تست پرفرمنس که شامل لود تست و استرس تست و stable  تست میشه . 

 

۰ نظر موافقین ۰ مخالفین ۰ ۱۴ آبان ۹۸ ، ۱۲:۳۵
نسیم ناصری