حدود پنج سال پیش، در حوزه QA برای یکی از شرکتهای بزرگ خرده فروشی یا اصطلاحا Retail، مشغول به کار بودم(البته با پست مشاوری که باید ۱۰۰ ساعت در ماه حضور میداشت)، و یک تیم کوچک را هدایت میکردم. برنامهای که ما روی آن کار میکردیم در وب و تلفن همراه در دسترس بود و ویژگیهای جدید دائماً به آن …
ادامه نوشته »ابوالفضل خواجه دیزجی
چرا نباید از Cucumber برای API Testing استفاده نمود
Cucumber ابزاری برای توسعه رفتار محور(BDD) است که تستهایی را که به زبانی ساده و قابل فهم نوشته شدهاند، امکان پذیر میکند. هر یک از قسمتهای تست مشتمل بر حالت اولیه(Initial State)، اقدام(Action) و حالت متعاقب(Consequent State) آن، که در قالب سناریوی “Given-When-Then” ساخته میشوند، میتوانند به طور جداگانه موفقیت یا عدم موفقیت(یا در انتظار بودن) را تعیین کنند. Cucumber …
ادامه نوشته »چگونه تست تجربی را با بالاترین بهرهوری انجام دهیم
تست تجربی یا Experience Testing یکی از سه گزینه برای دستهبندی تکنیکهای تست نرمافزار است، که خود شامل چندین تکنیک برای اجرای تست میباشد. معمول اوقات تسترهای تجربی به دلیل شناختی که از ابعاد مختلف پروژه و محصول خود دارند، با استفاده از تکنیک Error Guessing، تست را انجام میدهند. در این روش تستر بر اساس جمیع تجربیات و دانش …
ادامه نوشته »وقتی Non Functionality، صحت Functionality را متاثر میکند!
یک نرمافزار به واسطه مشخصههای آن مفهوم مییابد. مشخصههایی که هر یک باید تحت سنجش کیفیت قرار بگیرند. طبق استاندارهای ISO از جمله ISO 9126 و ISO 25010 پارامترهای کیفی و به تبع آن نوع نیازمندیهای یک نرمافزار تبیین شدهاند. به عنوان نمونه ISO 9126، انواع نیازمندیها/پارامترهای کیفی یک نرمافزار را به دو دسته و شش زیردسته تقسیمبندی میکند: Functional …
ادامه نوشته »آموزش JMeter-قسمت یازدهم: Test Plan و Controllerها(بخش اول)
Controllerها JMeter دارای دو نوع Controller است: Samplerها و Logical Controllerها. اینها پردازش یک تست را هدایت میکنند. Controllerها به JMeter میگویند Requestها را به سرور ارسال کند. به عنوان مثال، اگر میخواهید JMeter یک HTTP Request ارسال کند، یک HTTP Request Sampler اضافه کنید. همچنین میتوانید با اضافه کردن یک یا چند Configuration Element(عنصر پیکربندی) به یک Sampler، یک Request …
ادامه نوشته »آموزش Selenium-قسمت نوزدهم: آموزش کامل XPath در Selenium WebDriver(بخش اول)
در اتوماسیونِ Selenium، اگر عناصر توسط Locatorهای عمومی مانند id, class, name و غیره، پیدا نشدند، آنگاه نوبت XPath است که برای پیدا کردن یک عنصر در صفحه وب مورد استفاده قرار گیرد. در این قسمت از آموزش، ما در مورد XPath و عبارات مختلف XPath، برای یافتن عناصر پیچیده(Complex) یا دینامیک(که Attributeهای آن به صورت دینامیک در Refresh و …
ادامه نوشته »آموزش Selenium-قسمت هجدهم: نحوه آپلود و دانلود فایل با استفاده از Selenium Webdriver
در این آموزش، ما نحوه برخورد با آپلود و دانلود فایل را خواهیم آموخت. آپلود کردن فایلها برای این بخش از اینجا به عنوان برنامه آزمون ما استفاده خواهیم کرد. این سایت به راحتی به هر بازدید کنندهای اجازه میدهد بدون نیاز به ثبت نام(Sign up)، فایلهای خود را آپلود نمایند. آپلود فایلها در WebDriver به سادگی با استفاده از متد …
ادامه نوشته »آموزش Selenium-قسمت هفدهم: Mouse Click Event و Keyboard Event و موضوع Action Class در Selenium WebDriver
در این بخش، ما رویداد کیبورد(Keyboard Event) و ماوس(Mouse Event) را در Selenium Webdriver آموزش خواهیم داد. اداره کردن Keyboard Eventها و Mouse Eventها مدیریت رویدادهای ویژه صفحه کلید و ماوس با استفاده از Advanced User Interactions API انجام میشود. این موضوع شامل Actionها و Action Classهاست که در هنگام اجرای این رویدادها(Event) مورد نیاز است. موارد زیر عبارتند از …
ادامه نوشته »آموزش TestComplete-قسمت دهم: ساخت اولین تست وب اپلیکیشن(بخش اول)/مقدمه، Plan کردن تست و رکورد کردن تستها
ساخت اولین تست وب اپلیکیشن نسبتا طولانیست، لذا طی چند قسمت تقدیم خوانندگان خواهد شد تست کردن اپلیکیشنهای وب TestComplete از Functional Testing برای وی اپلیکیشنهایی که در IE، Edge، Chrome، Firefox و یا در Web Browser توکار(Built in) یا Chromium کار میکنند، پشتیبانی میکند. TestComplete از تست هر برنامه وب پشتیبانی کرده و پشتیبانی پیشرفتهای برای فن آوریهای HTML5، …
ادامه نوشته »آموزش JMeter-قسمت دهم: Test Plan و Tread Groupها
ما طی این پست و چند پست آتی به تشریح بخشهای مختلف یک Test Plan خواهیم پرداخت. میتوانید دستهبندی تمام بخشها را از اینجا ببینید. یک تست حداقلی شامل یک Test Plan، یک Test Group و یک یا چند Sampler است. Test Plan Test Plan Object دارای یک چکباکس به نام “Functional Testing” است. اگر انتخاب شده باشد، باعث میشود …
ادامه نوشته »