آزمون و ارزیابی می تواند برای ارائه یک تجربه قاب اعتماد به کاربران بسیار مهم و اساسی باشد.
همه می توانند در فرایند ارزیابی وب شرکت کنند. برای ارائه بازخورد در مورد چیزی که درست رفتار نمی کند یا مطابق انتظار نیست، نیازی به دانش فنی عمیق نمی باشد. به عنوان مثال، آزمون واحد یا Unit testing نیاز به دانش فنی در مورد کدنویسی دارد، اما تست دسترسی یا accessibility testing چنین نیست.
ارزیابی فقط به نفع توسعه دهندگان و مدیران محصول نیست. بلکه به نفع کل مجموعه یا شرکت است. ارزیابی به تیم تولید محصول امکان می دهد تا با اطمینان بیشتر به توسعه محصول مورد نظر بپردازند.
در سال 2018، شرکت اسپاتیفای(Spotify) اعلام کرد که آنها روی ازمون « حرکت سریع، با اطمینان از کارکردن همه چیز» متمرکز شدهاند. در ادامه انواع اقدامات تست نرم افزار را بررسی خواهیم کرد:
تست واحد(Unit Testing)
یک فرم کوچک آزمایش، که بر اجزای کد در سطح فردی و جداگانه تمرکز می کند. اساساً شما یک ورودی، کد مورد آزمایش(واحد) و یک خروجی دارید. زمانی یک آزمون واحد موفق است که خروجی آزمون با یک مقدار از پیش تعیین شده یکسان باشد. از آنجا که آزمون واحد اغلب بر روی عملکردهای واحدو خالص متمرکز است، آنها سریع می نویسند و اجرا می کنند.
ازمون واحد برای بک-اند بسیار اساسی است. که از طریق فریم ورک های مانند PHPunit، RSpec یا unittest انجام می شود.
آزمون یکپارچگی (Integration test)
برای انجام ازمون یکپارچگی باید به این سوال پاسخ دهید، “آیا این سرویس ها هنگام اتصال، مطابق انتظار اجرا می شوند؟” اخیراً میکرو سرویس ها نسبتاً محبوبیت خود را افزایش دادهاند، به این معنی که بخش هایی از برنامه شما به صورت جداگانه اجرا می شود و به طور بالقوه با یکدیگر ارتباط برقرار می کند. آزمون یکپارچگی اطمینان می دهد که این ارتباط مطابق انتظار کار می کند.
علیرغم رویکردهای جدید مانند میکروسرویس ها، آزمون یکپارچگی برای نحوه ارتباط برنامه شما با پایگاه داده یا اشخاص ثالث مفید است. یک مثال ساده این است. یک کار ثبت نام می کند، آیا مشخصات وی در پایگاه داده ثبت شده است؟
آزمون عملکرد(FUNCTIONAL TESTING)
آزمون عملکردی می تواند بسیار به آزمون یکپارچه سازی شبیه باشد اما یک هدف تجاری در ذهن دارد. مثال، ثبت مشخصات کاربر فوق را در نظر بگیرید، یک نسخه کاربردی میتواند این باشد”وقتی کاربر ثبت نام می کند، آیا پاسخ شامل مدل کاربری تازه ایجاد شده است؟”
END-TO-END TESTING
این آزمون را به عنوان وضعیتی در نظر بگیرید که واحدها به صورت گروهی ترکیب شده و آزمون می شوند. آزمون ها یا بر روی قطعات(اجزای) یک برنامه به صورت جداگانه اجرا می شوند. یا در طول تجربه کاربر اجرا می شوند. به عنوان مثال، یک آزمون مولفه(component test) میتواند این باشد “آیا کاربر می تواند توییت های دیگران را لایک کند؟” و آزمون یک تجربه کامل میتواند، ” آیا کاربر می تواند ثبت نام کند، پروفایل خود را ایجاد کند و اولین توییت خود را منتشر کند؟”
آزمون های END-TO-END معمولاً یک لیست از دستوراتی است که به مرورگر می گویند کاری را بدون کنترل و دخالت انسان انجام دهد. مفاهیم متداول می تواند عبارت “کلیک روی دکمه ثبت نام”، “انتخاب ایران از منوی کشویی کشورها” و “آیا دکمه لغو قابل مشاهده است؟” باشد.
جهت اتوماتیک سازی این آزمون ها معمولاً به سرویس هایی مانند SauceLabs یا BrowserStack نیاز است. این سرویس ها با ارائه ماشین مجازی به شما امکان می دهند تا لیست دستورالعمل ها را در اکوسیستم های مختلف( از IE9 در ویندوز تا آخرین نسخه Chrome در Mac) اجرا کنید. این امر به شما امکان می دهد که ایرادات را در محیط هایی که تیم توسعه شما در آن کار نمی کند، پیدا کنید.
این نوع آزمون در حال توسعه، از لحاظ تاریخی شکننده و حساس بوده است. زیرا هزینه نگهداری با گسترش تیم و پایگاه کد به طور تصاعدی افزایش می یابد. با این حال، با پیشرفت ابزارها، آزمون ها قابل اطمینان تر میشوند.
آزمون پذیرش کاربر(USER ACCEPTANCE TESTING)
این آزمون اغلب با نام UAT شناخته می شود که آخرین مرحله در امضای قرارداد تحویل است. آزمون UAT یک روش منسجم برای اطمینان از مطابقت پروژه با الزامات قرارداد(مشخصات) ذکر شده در آغاز چرخه توسعه است. برای کمک به شما جهت دریافت بهترین بازخورد از سوی کاربران، پیشنهاد می کنیم:
- کاربرانی این ازمون را انجام دهند که در توسعه آن مشارکت نداشتند.
- فرایند بازخورد را در اسرع وقت آغاز کنید. رفع مشکلات زود هنگام اغلب باعث صرفه جویی در زمان می شود.
- یک فرایند روشن و آسان در در مورد جمع آوری، اختصاص، کار و حل مسائل( از جمله مهلت های تعیین شده برای بازخورد) داشته باشید.
بهترین ابزار برای جمع آوری بازخورد وب، آنهایی هستند که بازخوردهای زمینهای، بصری و عملی را ارائه می دهند و نیاز چندانی به پرس و جو در مورد آنها وجود ندارد.
برای مثال، رابسانا، بازخورد کاربران را از طریق مرورگر جمع آوری می کند. سپس، وظایف به کارشناسان مورد نظر محول می شود تا تیم dev آنها را مدیریت کنند. به همین سادگی
همچنین، با کلیک بر روی ازمون ها میتوانید سایر سرویس های ارزیابی و سنجش کیفیت و کارایی رابسانا را نیز مشاهده نمایید.
سایر مقالات مرتبط: