Selenium چیست؟ Selenium یک Test Suite(مجموعه ابزار تست) اتوماتیک رایگان و Open Source است که برای برنامههای وب در بین مرورگرها و سیستمعاملهای مختلف استفاده میگردد. این ابزار کاملا شبیه به ابزار HP Quick Test Pro یا QTP است. تنها با این تفاوت که Selenium بر روی اتوماسیون برنامههای مبتنی بر وب تمرکز دارد. تست انجام شده با استفاده از …
ادامه نوشته »ابوالفضل خواجه دیزجی
آموزش Robolectric-قسمت هشتم: Drive کردن چرخه حیات Activity
قبل از Robolectric 2.2، اکثر تستها، Activityها را مستقیما با فراخوانی Constructorها، (()new MyActivity) و سپس فراخوانی دستی متدهای Lifecycle از قبیل ‘()onCreate'” ایجاد میکردند. همچنین به طور گستردهای از مجموعهای از متدها در ‘ShadowActivity’ (به عنوان مثال ‘()ShadowActivity.callOnCreate’) استفاده میشد، که برای ‘ActivityController’ به نوعی Precursor بودند. ‘ActivityController’ یک Robolectric API است که تمام این موضوعات را تغییر میدهد. هدف آن …
ادامه نوشته »مقایسه تست دستی و تست اتومات: تفاوت چیست؟
تست دستی چیست؟ تست دستی، نوعی از تست نرمافزار است که در آن تستها توسط تحلیلگران QA انجام میشود. این کار برای استخراج باگها در نرمافزار تحت توسعه انجام میشود. در تست دستی، تستر تمام امکانات(Feature) اصلی نرمافزار یا اپلیکیشن را بررسی میکند. در این فرآیند، تسترهای نرمافزار Test Caseها را اجرا کرده و گزارشات تست را بدون کمک ابزارهای …
ادامه نوشته »آموزش Robolectric-قسمت هفتم: استفاده از Qualified Resourceها
همانطور که در Android Developer Doc توضیح داده شده است، Resource Qualifierها به شما اجازه میدهند تا چگونگی بارگذاری Resourceهای خود را بر اساس فاکتورهایی از قبیل زبان روی دستگاه، سایز صفحه، و اینکه روز است یا شب تغییر دهید. علیرغم اینکه این تغییرات اغلب برای تست دقیق خستهکننده هستند(هر رشته برای تمام زبانها تمام پشتیبانی شده یک ترجمه دارد)، …
ادامه نوشته »آموزش Appium برای تست اپلیکیشنهای موبایل Android و iOS-قسمت ششم: ۱۸ پرسش و پاسخ مهم درباره Appium(بخش اول)
۱- توضیح دهید که Appium چیست؟ Appium یک Framework ویژه UI Testing برای اپلیکیشن موبایل به صورت Open Source، رایگان و توزیع شده(Distributed) است. ۲- قابلیتهای Appium را لیست کنید؟ قابلیتهای Appium عبارتند از: تست وب ارائه Cross-Platform برای اتوماسیون اپلیکیشن موبایل به صورت ترکیبی(Hybrid) و بومی(Native) پشتیبانی پروتکل JSON wire نیازی به کامپایل مجدد برنامه وجود ندارد پشتیبانی از …
ادامه نوشته »آموزش Robolectric-قسمت ششم: پیکربندی دستگاه(Device)
Robolectric شبیهسازی انواع مختلف پیکربندی Device را ساده میکند. به طور خاص، Propertyهایی که کلاس ‘android.content.res.Configuration’ را تشکیل میدهند میتوانند همانطور که در اینجا توضیح داده شده است در متد تست، کلاس تست، بسته یا سطح Siute، مشخص شوند. تنظیم پیکربندی دستگاه پیکربندی دستگاه Android را میتوان با استفاده از Property ویژه Config به نام ‘qualifiers’ مشخص کرد: از نسخه ۳٫۶، …
ادامه نوشته »تست اتوماتیک: فرآیند، Planning، و ابزار
تست خودکار چیست؟ تست دستی توسط شخصی که در مقابل یک کامپیوتر نشسته است و با دقت مراحل تست را اجرا میکند، انجام میشود. تست اتوماتیک به معنای استفاده از یک ابزار اتوماسیون برای اجرای مجموعه Test Caseهاست. نرمافزار اتوماسیون همچنین میتواند دادههای تست(Test Data) را در سیستم تحت تست(System Under Test-SUT) وارد کرده، نتایج مورد انتظار(Expected Result) و نتایج …
ادامه نوشته »آموزش Robolectric-قسمت پنجم: پیکربندی Robolectric
با استفاده از فایلهای ‘robolectric.properties’ برای پیکربندی سطح بسته(Package-Level Configuration) یا Config’ Annotation@'(حاشیهنویسی ‘Config@’) برای پیکربندی سطح کلاس(Class-Level) یا سطح متد(Method-Level)، میتوان چندین جنبه از رفتار Robolectric را در زمان اجرا پیکربندی نمود. ‘@Config’ Annotation به منظور پیکربندی Robolectric برای یک Test Class یا Test Method منفرد، از حاشیهنویسی ‘Config@’ استفاده کنید. حاشیهنویسی میتواند به کلاسها و متدها اعمال شود. مقادیر …
ادامه نوشته »آموزش تست دستی برای افراد مبتدی
تست دستی چیست؟ تست دستی یکی از انواع تست نرمافزار است که تسترها بدون استفاده از ابزارهای اتوماسیون به صورت دستی Test Caseها را اجرا میکنند. اما قبل از هر چیز باید چند نکته کلیدی را در مورد تست دستی بدانید: تست دستی، ابتداییترین نوع تست است و به پیدا کردن باگها در سیستم نرمافزاری کمک میکند. هر اپلیکیشن جدید …
ادامه نوشته »آموزش Appium برای تست اپلیکیشنهای موبایل Android و iOS-قسمت پنجم: Appium و Maven
Apache Maven یک ابزار مدیریت پروژه مبتنی بر جاواست. این ابزار قادر است یک چارچوب چندوظیفهای(Multitasking Framework) برای توسعهدهندگان فراهم نماید. این قابلیت، چرخه حیات کامل Build را تسهیل میکند. Maven از قبل تعریف شده و در فرمت XML به اسم POM-Project Object Model نامگذاری شده است و به ‘pom.xml’ ارجاع میشود. با استفاده از چارچوب Maven میتوانیم به راحتی …
ادامه نوشته »