این آموزش جامع، یک راهنمای عالی برای شروع تست اتوماسیون برای مبتدیان است.
WinAppDriver چیست؟ Windows Application Driver (WinAppDriver) یک ابزار تست اتوماسیون رایگان برای تست برنامههای ویندوزی است. کتابخانه Appium از WinAppDriver برای انجام عملیات خودکار در رابط کاربری (UI) دسکتاپ ویندوز استفاده میکند. Microsoft از WinAppDriver برای اتوماسیون برنامههای دسکتاپ و تست نرمافزاری عملکردی استفاده میکند. این دوره یک آموزش WinAppDriver است که برای همه طراحی شده است. Appium WinApp Driver یک ابزار رایگان است که APIهایی را برای بسیاری از زبانهای برنامهنویسی از جمله C# Dot Net، Java و Python ارائه میدهد. WinAppDriver بر اساس Appium است که توسط Selenium ایجاد شده است. از این رو، یک ابزار تست اتوماسیون استاندارد صنعتی است. Appium WinAppDriver کاملاً با مشخصات WebDriver مطابقت دارد (از آنجا که بر اساس Appium است). Power Automate Desktop برای اتوماسیون تست Windows Application Driver مورد نیاز نیست. لطفاً توجه داشته باشید که WinAppDriver با AutoIt متفاوت است و ما نیازی به آشنایی با ابزارهایی مانند AutoIt، Power Automate Desktop، PyWinAuto یا Robot Framework نداریم.
در این دوره، نحوه دانلود و استفاده از WinAppDriver UI Recorder نیز به طور کامل توضیح داده شده است.
تست اتوماتیک برای تیمهای تست نرمافزار بسیار مفید است. تست خودکار، چرخه عمر توسعه نرمافزار (SDLC) شما را چابک و سریع میکند.
اگر به دنبال web app driver هستید، لطفاً توجه داشته باشید که WinAppDriver یک موضوع متفاوت است و web application driver نیز موضوع دیگری است. بیشتر اینها Chrome Driver یا Firefox Driver هستند.
اتوماسیون ویندوز و اتوماسیون دسکتاپ، قلب این دوره هستند. در این دوره، با ابزار تست برنامه ویندوز رایگان WinAppDriver و نحوه انجام اتوماسیون با استفاده از WinAppDriver آشنا خواهید شد. همچنین نمونه کدهای منبع و مثالهای تست اتوماسیون گام به گام را دریافت خواهید کرد. این دوره در مورد Appium WinAppDriver Windows Desktop UI Automation Testing در C# DotNet است.
تست اتوماتیک روش مناسبی برای تست دسکتاپ در ویندوز است. دو ابزار محبوب برای این کار WinAppDriver و Appium هستند. WinAppDriver یک Windows Application Driver است که از تست UI شبیه Selenium از برنامههای دسکتاپ ویندوز پشتیبانی میکند. از طرف دیگر، Appium یک ابزار اتوماسیون برنامه موبایل cross-platform است که میتوان از آن برای تست دسکتاپ نیز استفاده کرد. WinAppDriver و Appium یک ترکیب قدرتمند برای تست دسکتاپ اتوماتیک در ویندوز ارائه میدهند. این ابزارها به شما امکان میدهند برنامههای دسکتاپ خود را از نظر عملکرد، کارایی و سازگاری در نسخهها و پیکربندیهای مختلف ویندوز تست کنید. بهترین بخش این است که میتوانید کل فرآیند تست را خودکار کنید که در زمان شما صرفهجویی میکند و نتایج ثابتی را تضمین میکند.
WinAppDriver موارد زیر را برای تسهیل تست اتوماتیک ارائه میدهد:
WinAppDriver نرمافزاری است که میتواند دستورات Appium را دریافت و به عنوان یک کنترل از راه دور UI عمل کند. WinAppDriver میتواند اقدامات مختلفی را بر روی UI یک برنامه ویندوز معین برای تست اتوماسیون انجام دهد. استفاده از WinAppDriver از هر زبان برنامهنویسی از جمله (اما نه محدود به) C#، Java، C++، JavaScript و Python امکانپذیر است.
WinAppDriver UI Recorder یک ابزار سبک وزن برای بازرسی UI است که به شما امکان میدهد ویژگیهای مختلف عناصر UI ویندوز را پیدا کنید.
پشتیبانی از API برای زبانهای برنامهنویسی مختلف از جمله C Sharp (C#)، Java، Python و موارد دیگر در دسترس است.
بسیاری از دانشآموزان این دوره از آن برای یادگیری مفاهیم Windows UI Automation و انجام اتوماسیون در Python و Java استفاده کردهاند. علاوه بر این، آنها متوجه شدند که این یک مجموعه آموزشی عالی WinAppDriver است.
این دوره یک پاسخ کامل به سوالات تست نرمافزار خودکار ویندوز شماست. در این دوره، من به شما نشان خواهم داد که چگونه با Appium WinAppDriver در C# شروع کنید و چگونه به سرعت به سمت اتوماسیون تست کامل بروید.
توجه: Appium بر اساس WebDriver ایجاد شده است که همچنین اساس Selenium است. به این ترتیب، اگر از Appium/WinAppDriver شروع کنید، میتوانید به سرعت به تست UI مبتنی بر Selenium بروید. اگرچه، شما باید نحوه عملکرد وبسایتهای HTML مبتنی بر DOM را درک کنید.
بهترین بخش این است که این دوره در C# Dot Net است و من تکنیکهایی را به شما نشان خواهم داد که به جای روش آزمون و خطای معمول منبع باز، کار میکنند. به عنوان مثال، Appium-based Windows Application Driver (WinAppDriver) یک دوره برای افراد QA توسط افراد QA است.
Appium در جامعه تسترهای اتوماسیون برای اتوماسیون موبایل بسیار محبوب است. Appium برای iOS و Android در حال حاضر وجود دارد. Microsoft با ارائه ابزارهای لازم برای آوردن تست برنامه ویندوز به دنیای Appium، به این جریان پیوسته است.
من به شما نشان خواهم داد که چگونه تست برنامههای Win32 Applications قدیمی را خودکار کنید، با برنامههای Unified Windows Platform (UWP) سروکار داشته باشید و چالشهای آن را برای شناسایی عناصر UI در C# (C Sharp) با WinAppDriver برطرف کنید.
بخش اول نصب ابزار را با جزئیات پوشش میدهد و من به شما نشان خواهم داد که چگونه هر چیزی را که برای اتوماسیون تست Win WinAppDriver نیاز دارید، دانلود و نصب کنید. این شامل Visual Studio Community Edition، Node.js، Appium و WinAppDriver خواهد بود.
بخش 2، Windows Application Driver (WAD) UI Recorder را معرفی میکند. پس از نصب ابزارها، اولین راهحل UI Automation خود را در C# .Net راهاندازی میکنید و Appium WinAppDriver را اضافه میکنید. در مرحله بعد، اولین برنامه تست اتوماسیون خود را با استفاده از C# (C Sharp) و Appium WinAppDriver در 5 دقیقه بعدی مینویسید. در نهایت، من به شما نشان خواهم داد که چگونه با استفاده از Appium WinAppDriver از کد C# اسکرینشات بگیرید، عنوان یک برنامه ویندوز Win32 را بخوانید، یک پنجره را به حداکثر برسانید و یک برنامه را که توسط اسکریپتهای تست اتوماسیون Appium WinAppDriver راهاندازی شده است، ببندید.
در بخش 2، من به شما نشان خواهم داد که چگونه عملیات UI Automation مانند کلیک کردن ماوس و تایپ کردن با صفحه کلید (SendKeys) را انجام دهید. سپس، نحوه استفاده از انتظار ضمنی Selenium با استفاده از C# در سناریوهای Appium/WinAppDriver را یاد خواهید گرفت.
Appium Desktop Client نیز پوشش داده شده است. من به شما نشان خواهم داد که چگونه یک جلسه سفارشی در Appium Desktop Client ایجاد کنید تا عناصر یک برنامه ویندوز را از طریق Windows Application Driver (WinAppDriver یا WAD) بازرسی کنید. همچنین نحوه بررسی درخت XML که نشاندهنده عناصر UI یک برنامه با استفاده از Appium برای اسکریپتهای تست اتوماسیون است را یاد خواهید گرفت.
در مرحله بعد، اگر میخواهید یک پروژه تست واحد در Visual Studio ایجاد کنید، چارچوب MS Test (Visual Studio Unit Testing) را به شما معرفی میکنم. شما عملاً چرخه عمر یک تست واحد مبتنی بر MSTest را خواهید دید و آن را با استفاده از کلمات کلیدی مانند TestClass، ClassInitialize، TestMethod، TestInitialize، TestCleanup و ClassCleanup در C# پیادهسازی خواهید کرد. همچنین به شما آموزش خواهم داد که چگونه ببینید آیا تستهای خودکار شما با موفقیت انجام شدهاند یا شکست خوردهاند (چرخه قرمز-سبز TDD). من پنجره TestExplorer Visual Studio را برای این منظور به شما نشان خواهم داد. همچنین یاد خواهید گرفت که چگونه جزئیات خطای شکست تست را مشاهده کنید. این مفاهیم کلی تست اتوماسیون را میتوان در زبانها و محیطهای مختلف و با ابزارهای مختلف تست اتوماسیون استفاده کرد.
لطفاً توجه داشته باشید که میتوانید از چارچوبهای اتوماسیون دیگری مانند NUnit و XUnit نیز استفاده کنید که در این آموزش WinAppDriver نشان داده نشدهاند.
بعد از آن، من به شما نشان خواهم داد که چگونه MS Test را با (Appium) Windows Application Driver ترکیب کنید تا اسکریپتهای تست نرمافزاری خودکار مناسبی ایجاد کنید. در این بخش، من به شما نشان خواهم داد که چگونه یک تست را برای شناسایی مشکلات و طراحی راهحلهایی برای مشکلات پیچیده اشکالزدایی کنید (گاهی اوقات، شما نمیتوانید یک عنصر ویندوز را از قبل پیدا کنید). در نهایت، این بخش اطلاعات مفیدی در مورد تست UI عملکردی عملی با استفاده از ابزارهای نرمافزاری خودکار ارائه میدهد.
در بخش بعدی، تست دادهمحور MS Test را نشان خواهم داد. سپس، به شما نشان خواهم داد که چگونه دادههای Excel را در تستهای Appium Windows Application Driver ادغام کنید. این بخش به شما نشان میدهد که چگونه مجموعه تستهای یکسان را با دادههای مختلف برای تست سناریوهای مختلف اجرا کنید. اما ابتدا، من به شما نشان خواهم داد که چگونه از TestContext در تست اتوماسیون استفاده کنید.
Appium C# WinAppDriver UI Automation Testing، کانون اصلی این دوره است.
آخرین بخش این دوره در مورد تست خودکار برنامههای مبتنی بر WinForms (Windows Forms) در WinAppDriver (Appium) خواهد بود. من به شما نشان خواهم داد که چگونه به رایجترین کنترلهای ویندوز در RPA/UI Test Automation دسترسی پیدا کنید. موضوعات مرتبط با عناصر UI ویندوز WinForms (کنترلها) به صراحت در این دوره در زیر آمده است:
اتوماسیون تست Checkbox
اتوماسیون تست Radio button
اتوماسیون تست Button
اتوماسیون تست DataGrid
تست خودکار Popup
تست خودکار WinTree
تست خودکار Menu Item
در پایان، امیدوارم این دوره را در یادگیری تست نرمافزار خودکار و UI Automation به طور کلی برای سناریوهای شبیه RPA با Microsoft C#، WinAppDriver مبتنی بر Appium و Visual Studio مفید بدانید.
این دوره کاملاً از ابزارهای نرمافزاری رایگان استفاده میکند!
همه چیزهایی که در این دوره نشان داده شده است را میتوان از طریق CI/CD در Azure DevOps Pipelines اجرا کرد.
توجه: WinApp Driver اشتباه است. مخفف صحیح WinAppDriver است که یک کلمه واحد است. نام کامل آن Windows Application Driver است.
تست نرمافزار اتوماسیون دسکتاپ در بین کسبوکارهای با هر اندازهای به طور فزایندهای محبوب میشود. این نوع تست نرمافزار به شرکتها اجازه میدهد تا فرآیندهای تست خود را خودکار کنند و در نتیجه کارایی و دقت را افزایش دهند. علاوه بر این، با استفاده از تست نرمافزار اتوماسیون دسکتاپ، کسبوکارها میتوانند تلاشهای تست خود را سادهسازی کنند و اطمینان حاصل کنند که نرمافزار آنها قبل از انتشار برای مشتریان، به درستی کار میکند. این میتواند در درازمدت در زمان و هزینه شرکتها صرفهجویی کند، زیرا میتوانند هرگونه مشکل را قبل از اینکه به مشکلات مهمی تبدیل شوند، شناسایی و برطرف کنند. به طور کلی، تست نرمافزار اتوماسیون دسکتاپ یک ابزار ارزشمند برای کمک به کسبوکارها در بهبود فرآیندهای توسعه نرمافزار و ارائه محصولات باکیفیت به مشتریان است.
Appium یک ابزار اتوماسیون منبع باز است که برای تست برنامههای موبایل استفاده میشود. این یک راهحل cross-platform برای خودکار کردن دستگاههای iOS، Android و Windows ارائه میدهد. با Appium، توسعهدهندگان میتوانند تستهای خودکار را با استفاده از زبان و چارچوب تست دلخواه خود بنویسند. همچنین از طیف گستردهای از انواع تست، از جمله تستهای عملکردی، عملکرد و سازگاری پشتیبانی میکند.
آیا شما یک تستر نرمافزار هستید که به دنبال بهبود مهارتهای خود و جلو افتادن در صنعت هستید؟ به دوره تست اتوماسیون ما بپیوندید و یاد بگیرید که چگونه در تست اتوماتیک استاد شوید. با مربیان متخصص و یک برنامه درسی جامع، دانش و تجربهای را به دست خواهید آورد که برای برتری در حرفه خود نیاز دارید. این فرصت را برای ارتقای مهارتهای خود و افزایش ارزش خود به عنوان یک تستر نرمافزار از دست ندهید. هم اکنون ثبت نام کنید!
تست اتوماسیون ضروری است؛ همین حالا یاد بگیرید!
Naeem Akram
Test Engineer Sr.I am A person with many talents and interests, ranging from gardening to programming and poetry to cooking. Right now I'm working as a Software Test Engineer. On my job I use Microsoft Coded UI, Selenium, and Appium for creating test automation scripts. It is also a part of my job to maintain these automation scripts and run them via CI/CD using TFS. Apart from teaching, I'm also learning how actively on Udemy and my core interests are Azure Devops. I've been writing computer software code(C++, C# .Net) since 2006, creating awesome Android apps since 2012. I've been working as a freelance software developer since Nov. 2012. I've extensively worked on network communications, computer telephony integration(CTI) using Microsoft TAPI 2.x and 3.x, and LDAP server programming(Active Directory). Android app development has been my focus as a freelancer, I've created and published several apps for clients and a couple for myself on Google Play store.
نمایش نظرات