آموزش تست خودکار | Automated Testing

تست نرم افزار چیست؟

تست نرم افزار فرآیند اجرای یک برنامه یا برنامه با هدف پیدا کردن اشکالات نرم افزاری است.

چرا تست نرم افزار ها امری ضروری است؟

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

انواع تست نرم افزار

Unit testing یا تست واحد

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

Static testing یا تست استاتیک

یک تکنیک تست نرم افزاری است که در آن نرم افزار بدون اجرای کد مورد آزمایش قرار می گیرد.

Integration testing یا تست یکپارچه سازی

تست یکپارچه سازی یک فرآیند توسعه نرم افزاری است که واحدهای برنامه را به صورت چند گانه ترکیب و آزمایش می کنند.

Penetration Testing یا تست نفوذ

Penetration testing یا pen testing به معنای تست نفوذ، انجام تست سیستم کامپیوتری، شبکه یا برنامه وب برای شناسایی آسیب پذیری هایی است که مهاجم می تواند از آن استفاده کند.

Automated Testing یا تست خودکار

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

معرفی Automated Testing

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

تست خودکار (Automated Testing) چیست؟

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

هدف اصلی تست خودکار، افزایش کارایی تست و توسعه ارزش نرم افزاری است.

چه توابعی با استفاده از ابزارهای تست خودکار، خودکارسازی می شوند؟

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

مزایای تست خودکار

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

نرم افزارهای تست خودکار

  • HP Quick Test Professional
  • Selenium
  • Visual Studio Test Professional
  • WATIR
  • IBM Rational Functional Tester
  • TestComplete
  • Testing Anywhere
  • WinRunner
  • LaodRunner
  • SilkTest
  • آشنایی با تست Selenium WebDriver در پایتون

آشنایی با تست Selenium WebDriver در پایتون

جمعه ۱۳ مهر ۱۳۹۷ - ساعت ۱۰:۰۰
  • آموزش تسلط بر خودکارسازی تست با Selenium WebDriver 3.X

آموزش تسلط بر خودکارسازی تست با Selenium WebDriver 3.X

چهارشنبه ۱۱ مهر ۱۳۹۷ - ساعت ۱۴:۰۰
  • آموزش تست خودکار با Cucumber و Java 

آموزش تست خودکار با Cucumber و Java 

شنبه ۲۷ مرداد ۱۳۹۷ - ساعت ۲۱:۰۰
  • آموزش اصولی Android Espresso

آموزش اصولی Android Espresso

سه شنبه ۲۱ فروردین ۱۳۹۷ - ساعت ۱۱:۰۰
  • آموزش تست خودکار در Xcode

آموزش تست خودکار در Xcode

جمعه ۲۰ بهمن ۱۳۹۶ - ساعت ۱۰:۰۰
  • آموزش تست خودکار UI در Android 

آموزش تست خودکار UI در Android 

چهارشنبه ۱۱ بهمن ۱۳۹۶ - ساعت ۲۱:۰۰
  • آموزش شروع کار با تست خودکار (Automation Testing)

آموزش شروع کار با تست خودکار (Automation Testing)

سه شنبه ۲۶ دی ۱۳۹۶ - ساعت ۱۱:۳۰
  • آموزش تست خودکار UI در سی شارپ

آموزش تست خودکار UI در سی شارپ

دوشنبه ۲۵ دی ۱۳۹۶ - ساعت ۱۸:۰۰
  • تست وب خودکار توسط Selenium و WebDriver با استفاده از Java

تست وب خودکار توسط Selenium و WebDriver با استفاده از Java

شنبه ۲۵ آذر ۱۳۹۶ - ساعت ۱۴:۰۰
  • آموزش تست خودکار برنامه های #F برای توسعه دهندگان

آموزش تست خودکار برنامه های #F برای توسعه دهندگان

شنبه ۱۸ آذر ۱۳۹۶ - ساعت ۲۱:۳۰
  • تست خودکار سایت ها با Selenium و SpecFlow

تست خودکار سایت ها با Selenium و SpecFlow

جمعه ۱۲ خرداد ۱۳۹۶ - ساعت ۰۰:۰۰
  • تست خودکار و قابل خواندن کسب و کار با SpecFlow 2.0

تست خودکار و قابل خواندن کسب و کار با SpecFlow 2.0

جمعه ۰۴ تیر ۱۳۹۵ - ساعت ۱۴:۰۰
  • تست خودکار اپلیکیشن های Xamarin

تست خودکار اپلیکیشن های Xamarin

شنبه ۲۸ فروردین ۱۳۹۵ - ساعت ۱۸:۰۰
  • تست خودکار برنامه در ASP.NET MVC

تست خودکار برنامه در ASP.NET MVC

شنبه ۱۴ شهریور ۱۳۹۴ - ساعت ۲۰:۳۱
  • آموزش تست خودکار وب سایت با Selenium

آموزش تست خودکار وب سایت با Selenium

شنبه ۲۱ تیر ۱۳۹۳ - ساعت ۱۶:۳۷
  • آموزش تست خودکار نرم افزار Automated Testing

آموزش تست خودکار نرم افزار Automated Testing

جمعه ۰۲ خرداد ۱۳۹۳ - ساعت ۰۵:۳۱