آموزش تست اتوماسیون پیشرفته برنامه های مدرن با C#.NET

Advanced Automation Testing of Modern Apps with C# .NET

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: روش های مدرن برای خودکارسازی برنامه با C#.NET با استفاده از Selenium، XUnit، Dependency Injections، Docker و موارد دیگر را بیاموزید! آشنایی با روش‌های تست اتوماسیون قوی ساختمان درک تزریق وابستگی برای ساخت چارچوب اتوماسیون آزمایشی درک هدف اجرای پروژه تست به‌عنوان کانتینر داکر روشی بهتر برای اجرای آزمایش‌های موازی و بین مرورگر برنامه‌ها پیش نیازها: مبانی سلنیوم مبانی زبان برنامه‌نویسی سی شارپ مبانی داکر

این دوره تست اتوماسیون پیشرفته برنامه های مدرن با سی شارپ دات نت یک دوره کارشناسی ارشد است که به شما کمک می کند نه تنها برنامه را خودکار کنید، بلکه به شما کمک می کند تا مفاهیم عمیق خودکارسازی برنامه را به روشی مدرن با استفاده از ابزارهای مدرن و مدرن درک کنید. تمرینات در دنیای NET.

در این دوره آموزشی، خودکارسازی پروژه های ASP Netcore Web API و WebUI را با استفاده از ابزارهایی مانند

یاد خواهید گرفت.
  • سلنیوم

  • XUnit

  • تعمیر خودکار

  • ادعای روان

  • Specflow

  • Autofac

  • Xunit.DependencyInjection

  • WebApplicationFactory (تست یکپارچه سازی)

Application Under Test (AUT) در داخل یک Docker Container اجرا می‌شود، بنابراین چالش‌های اتوماسیون برای خودکارسازی برنامه‌ای که به‌عنوان یک میکروسرویس در کانتینرها اجرا می‌شود، بخشی از این دوره تقریباً از بخش اول مورد بحث قرار خواهد گرفت.

این دوره به بخش های زیر تقسیم می شود

  1. تست UI - توسعه چارچوب بنیادی با DI

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

  2. تست UI - بلوک های ساختمان برای پروژه آزمایشی

    این بخش به نوشتن کد بلوک ساختمان برای آزمایش برنامه با استفاده از الگوها و تکنیک هایی مانند

    کمک می کند.
    1. مدل شی صفحه سلنیوم

    2. اصرار بر تمرکز بر جداسازی نگرانی

    3. تنظیمات

    4. روش های برنامه افزودنی IWebElement

  3. تست UI - نوشتن تست های موثر

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

    است
    1. تعمیر خودکار

    2. FluentAssertions

    3. Specflow

  4. آزمایش پایگاه داده با ORM

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

  5. تست یکپارچه سازی - بهترین آزمایش تا کنون!

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

    به دست آورد.
    1. پایگاه داده

    2. UI

    3. خدمات شخص ثالث

    ما همچنین قدرت تست سرور خود ASP.NET و نحوه بوت استرپ کردن یک برنامه کاربردی را در حین آزمایش آنها درک خواهیم کرد.

علاوه بر موضوعات و بخش‌های بالا، این دوره همچنین دارای دوره‌های تصادفی است که به یادگیری عمیق‌تر دوره کمک می‌کند، مانند

  1. توسعه برنامه با استفاده از ASP Net Core WebAPI و Web UI

  2. مبانی Specflow

  3. XUnit

  4. تعمیر خودکار

در پایان این دوره، فرد تمام دانش لازم برای به کارگیری بهترین شیوه های اتوماسیون نژاد را با اطمینان کامل خواهد داشت.



سرفصل ها و درس ها

درباره دوره About Course

  • معرفی دوره Course Introduction

  • نسخه ی نمایشی کد دوره Course code demo

برنامه تحت آزمایش (ASP.NET Core WebAPI و UI در حال اجرا در VS و Docker) Application Under Test (ASP.NET Core WebAPI and UI running in VS and Docker)

  • معرفی Introduction

  • در حال اجرا برنامه از Visual Studio 2022 Running application from Visual Studio 2022

  • در حال اجرا برنامه در ظرف Docker Running application within Docker container

  • کد Code

تست UI - توسعه چارچوب اساسی با تزریق وابستگی UI Testing - Developing foundational framework with Dependency Injection

  • معرفی Introduction

  • ایجاد پروژه ساده برای سلنیوم سی شارپ Creating simple project for Selenium C#

  • نوشتن کد سلنیوم سی شارپ بیشتر Writing more Selenium C# code

  • مدیریت IWebDriver با XUnit IClassFixture Managing IWebDriver with XUnit IClassFixture

  • درک نیازهای مختلف تست UI در صنعت Understanding various UI Test requirement in Industry

  • تست سلنیوم موازی با XUnit Parallel Selenium Test with XUnit

  • اضافه کردن پشتیبانی از آزمایش بین مرورگرها Adding Cross-Browser testing support

  • اجرای تست های متقابل مرورگر به صورت موازی Running Cross-Browser tests in Parallel

  • درک تزریق وابستگی (DI) Understanding Dependency Injection (DI)

  • راه اندازی AutoFac Dependency Injection Setting up AutoFac Dependency Injection

  • AutoFact برای مدیریت BrowserType در DriverFixture AutoFact to handle BrowserType in DriverFixture

  • کد منبع Source code

  • معرفی XUnit.DependencyInjection برای کدنویسی مدرن Introducing XUnit.DependencyInjection for modern coding

  • تزریق وابستگی برای BrowserDriver با XUnit.DI Dependency Injection for BrowserDriver with XUnit.DI

  • تزریق وابستگی برای DriverFixture Dependency Injection for DriverFixture

  • تزریق وابستگی برای BrowserType Dependency Injection for BrowserType

  • خلاصه Summary

تست UI - بلوک های ساختمانی برای پروژه های آزمایشی UI Testing - Building Blocks for Test Projects

  • معرفی Introduction

  • ایجاد متد افزونه WebDriverInitializer برای TestSettings Creating WebDriverInitializer Extension method for TestSettings

  • نوشتن کد سلنیوم مدل شی صفحه Writing Page Object Model Selenium code

  • افزودن روش‌های اقدام بیشتر برای کد مدل شیء صفحه Adding more action methods for Page Object Model code

  • کد منبع تا POM Source code until POM

  • جداسازی نگرانی در تست ها Separation of concern in Tests

  • زمان بازسازی Time to refactor

  • روش توسعه برای Selenium IWebElement Extension method for Selenium IWebElement

  • افزودن پشتیبانی از تست Data Driven Adding Data Driven testing support

  • آشنایی با اصول پیکربندی و کار با آن Understanding Configuration basics and working with it

  • افزودن TestSettings برای پیکربندی برای رسیدگی در چارچوب DI Adding TestSettings for Configuration to handle within DI Framework

  • اجرای تست با پیکربندی از appsettings.json Running the Test with Configuration from appsettings.json

  • کد منبع تا پیکربندی Source code until Configuration

  • مدیریت مرورگر پس از اجرای آزمایش دفع شود Handling Browser Dispose after test execution

  • مقدمه ای بر HtmlTableExtension برای مدیریت جداول وب Introduction to HtmlTableExtension for handling Web Tables

  • افزودن پسوندهای جدول Adding Table extensions

  • اجرای تست با HtmlTableExtension Running Test with HtmlTableExtension

  • خلاصه Summary

تست رابط کاربری - ساخت تست های موثر UI Testing - Building Effective Tests

  • معرفی Introduction

  • شروع کار با FluentAssertions Getting started with FluentAssertions

  • AUT را برای دریافت شناسه مورد نیاز برای تست اتوماسیون تغییر دهید Modify AUT for getting ID required for automation test

  • دریافت مقدار از UI و اثبات آن با داده های ورودی Getting value from UI and assert it with Input data

  • اجرای آزمون با تغییرات Running the test with changes

  • اجرای تست از Commandline Running Test from Commandline

  • کد منبع Source code

  • شروع کار با Specflow Getting started with Specflow

  • تنظیم Specflow و اضافه کردن سناریوها Setting up Specflow and add scenarios

  • پیاده سازی تعریف مرحله Specflow Implementing Specflow step definition

  • پیاده سازی تعریف مرحله Specflow [بخش 2] Implementing Specflow step definition [Part 2]

  • تزریق وابستگی با Specflow Dependency Injection with Specflow

  • خلاصه Summary

  • کد منبع کامل Complete Source code

تست پایگاه داده - ORM راهی برای رفتن است! Database Testing - ORM is the way to go !

  • معرفی Introduction

  • ادغام کد در حال توسعه با کد تست - دو جهان را به هم نزدیک می کند Merging Developing code with Test Code - Bringing two worlds together

  • درک برنامه تحت آزمایش Understanding Application Under Test

  • [اختیاری] - ایجاد SQL Server به عنوان باطن برای ProductAPI [Optional] - Creating SQL Server as backend for ProductAPI

  • [اختیاری] - اتصال به پایگاه داده SQL Server که به عنوان یک Docker Container اجرا می شود [Optional] - Connecting to SQL Server Database running as an Docker Container

  • افزودن قابلیت اتصال DB با ORM و DI در پروژه BDD Adding DB Connectivity with ORM and DI in BDD project

  • دسترسی به DB از تعریف مرحله Specflow Accessing DB from Specflow Step definition

  • عملیات حذف DB را برای پاکسازی انجام دهید Perform DB Delete operation for cleanup

  • عملیات Add را در DB برای تنظیم داده های آزمایشی انجام دهید Perform Add operation in DB for Test Data setup

  • انجام عملیات ویرایش با پاکسازی با استفاده از DB Performing Edit Operation with Cleanup using DB

  • مدیریت حذف در پس‌زمینه Specflow Handling Delete in Specflow Background

  • خلاصه Summary

افزودن ویژگی های بیشتر - گزارش Specflow، گزارش Allure، Grid Selenium، Containers Adding more features - Specflow report, Allure report, Selenium Grid, Containers

  • معرفی Introduction

  • افزودن پشتیبانی Specflow Living Document Adding Specflow Living Document support

  • افزودن پشتیبانی از Allure Reporting Adding Allure Reporting support

  • تست های Specflow را در حالی که شکست می خورند دوباره امتحان کنید Retry Specflow tests while they fail

  • کد منبع Source code

  • مقدمه ای بر راه اندازی شبکه سلنیوم برای اجرای آزمایش توزیع شده Introduction to Selenium Grid setup for Distributed Test execution

  • [ویدیو یوتیوب] - شبکه سلنیوم پویا [قابل رد شدن] [YouTube Video] - Dynamic Selenium Grid [Skippable]

  • Refactoring DriverFixture برای مدیریت RemoteWebDriver برای شبکه سلنیوم Refactoring DriverFixture to handle RemoteWebDriver for Selenium Grid

  • اضافه کردن Selenium Hub و Node در Docker Compose به همراه App Docker Compose Adding Selenium Hub and Node in Docker Compose along with App Docker compose

  • اجرای تست از Docker Compose و مشکلات رایج Running Test from Docker Compose and common issues

  • اجرای تست Dockerized تست همراه با ظروف برنامه Dockerized Test Execution of Test along with Application Containers

  • خلاصه و جا برای بهبود Summary and room to improve

  • کد منبع کامل Complete Source code

تست یکپارچه سازی برنامه - WebApplicationFactory, Service Isolation .. Integration Testing of Application - WebApplicationFactory, Service Isolation ..

  • معرفی Introduction

  • نوشتن تست یکپارچه سازی ساده با HttpClient Writing Simple Integration Test with HttpClient

  • ارجاع به پشتیبانی تست یکپارچه سازی ASP.NET و WebApplicationFactory Referencing ASP.NET Integration Testing support and WebApplicationFactory

  • فراخوانی SUT با WebApplicationFactory و اجرای تست در برابر آن Invoking SUT with WebApplicationFactory and running test against it

  • ایجاد تعریف SUT API با Swagger و NSwag Generating SUT API definition with Swagger and NSwag

  • نوشتن کد تست با کد تولید شده توسط NSwag Writing Test Code with the NSwag generated code

  • نوشتن WebApplicationFactory سفارشی برای تست جداسازی DB Writing Custom WebApplicationFactory for DB Isolation Testing

  • اجرای تست با WebApplicationFactory سفارشی Running Test with Custom WebApplicationFactory

  • اجرای تست های یکپارچه سازی با ظرف داکر Running Integration tests with Docker container

  • خلاصه Summary

  • کد منبع Source code

اجرای تست ها در Local Machine و Docker Container با Grid Setup Running Tests in Local Machine and Docker container with Grid Setup

  • معرفی Introduction

  • افزودن ExecutionType در TestSettings برای Local و Remote Adding ExecutionType in TestSettings for Local and Remote

  • اجرای تست در ماشین محلی با WebDriverManager Running Test in Local Machine with WebDriverManager

  • افزودن پیکربندی جداگانه برای اجرای محلی و از راه دور Adding Separate Configuration for Local and Remote execution

  • اجرای تست محلی با تنظیمات Running Local Test with Configurations

  • اجرای تست در ریموت (کانتینر داکر) با پیکربندی Running Test in remote (Docker container) with configuration

  • کد منبع Source Code

اجرای تست در خط لوله CI/CD - GitHub Actions Running Test in CI/CD pipeline - GitHub Actions

  • معرفی Introduction

  • افزودن اسکریپت Shell برای اجرای فایل Docker-Compose و مشکل با آن Adding Shell script to run Docker-Compose file and Issue with it

  • افزودن و اجرای GitHub Actions Workflow برای پروژه ما Adding and Running GitHub Actions Workflow for our project

  • رفع مشکل شبکه دینامیک سلنیوم در جریان کار Fixing Dynamic Selenium Grid Problem within workflow

  • تولید مصنوعات Specflow LivingDoc از گردش کار Generating Specflow LivingDoc Artifacts from workflow

  • انتشار گزارش Specflow از Artifact به صفحات GitHub Publishing Specflow Report from Artifact to GitHub Pages

  • اجرای کامل CI/CD و خلاصه Complete CI/CD execution and Summary

[دوره تصادف] - مبانی Specflow [Crash Course] - Specflow Basics

  • چرا SpecFlow و مزایای آن Why SpecFlow and its benefits

  • نصب و راه اندازی Installation and getting started

  • کار با جداول Specflow برای تست داده محور Working with Specflow tables for Data Driven Testing

  • قلاب Specflow Specflow Hooks

  • کار با داده های تست پویا با AutoFixture Working with Dynamic Test Data with AutoFixture

  • مرحله آرگومان Specflow برای تبدیل یک مرحله خاص Step Argument of Specflow to transform an specific step

  • Specflow با ویژگی های C# 10 Specflow with C# 10 features

  • تزریق زمینه Specflow Context Injection of Specflow

  • ویرایشگر Specflow Gherkin (نسخه آنلاین) Specflow Gherkin Editor (Online version)

[دوره Crash] - توسعه ASP.NET Core Web UI و API API (بخش 1) [Crash Course] - Developing ASP.NET Core Web UI and API Application (Section 1)

  • معرفی Introduction

  • ایجاد ASP.NET WebAPI، افزودن Entity Framework، Model و Seed Data Creating ASP.NET WebAPI, Adding Entity Framework, Model and Seed Data

  • انجام Seed Data و نوشتن کنترلرهای API سفارشی برای دسترسی به آنها در WebAPI Performing Seed Data and writing custom API controllers to access them in WebAPI

  • الگوی مخزن برای انجام عملیات CRUD با Entity Framework ORM Repository Pattern to perform CRUD operation with Entity Framework ORM

  • Refactoring راه حل موجود برای افزودن پشتیبانی از DockerFile Refactoring existing Solution to add support for DockerFile

[دوره Crash] - توسعه ASP.NET Core Web UI و API API (بخش 2) [Crash Course] - Developing ASP.NET Core Web UI and API Application (Section 2)

  • معرفی Introduction

  • دسترسی به API محصول با مرجع خدمات OpenAPI در VS 2022 Accessing Product API with OpenAPI Service reference in VS 2022

  • ایجاد نمای ساده محصول و دسترسی به API محصول از Swagger Client Creating simple Product View and accessing the Product API from Swagger Client

  • تولید کد Open API Spec با استفاده از Swagger و NSwag Code generation of Open API Spec using Swagger and NSwag

  • ایجاد کنترلر محصول و مشاهده لیست محصول Creating Product Controller and Product List VIew

  • ایجاد نمای ایجاد محصول Creating create Product view

  • ایجاد نمای ویرایش محصول Creating Edit Product view

  • Refactoring دسترسی محصول API با Product Utils برای Swagger Client Refactoring Product API access with Product Utils for Swagger Client

  • ایجاد جزئیات محصول و حذف نمایش و عمل در کنترلر Creating Product Details and Delete View and action in controller

  • مدیریت انواع Enum در Open API Spec و تولید کد در Swagger با NSwag Handling Enum Types in Open API Spec and generating code in Swagger with NSwag

[دوره Crash] - XUnit با سلنیوم، فیکسچر خودکار و ادعای روان [Crash Course] - XUnit with Selenium, AutoFixture and Fluent Assertion

  • مقدمه ای بر XUnit Introduction to XUnit

  • XUnit Context Injection و ایجاد کلاس Fixture برای ایجاد و دفع شی XUnit Context Injection and creating Fixture class to create and dispose object

  • آزمایش مبتنی بر داده با XUnit با استفاده از [InlineData] Data Driven Testing with XUnit using [InlineData]

  • DDT با [MemberData] و سفارشی کردن آن برای [نظریه] DDT with [MemberData] and customizing it for [Theory]

  • اجرای تست های XUnit به صورت موازی و متوالی Running XUnit Tests in Parallel and in Sequence

  • آزمایش برنامه برای شکست و چگونه می توان آن را انجام داد؟ Testing application for Failures and how to make it happen?

  • مقدمه ای بر ادعاهای روان Introduction to Fluent Assertions

  • مقدمه ای بر [AutoFixture] برای تنظیم داده های اتوماسیون برای هر آزمایش Introduction to [AutoFixture] for automation data setup for each tests

  • ایجاد داده‌های تست سفارشی با استفاده از الگوی سازنده AutoFixture Customized Test Data creation using Builder Pattern of AutoFixture

  • پر کردن داده‌های تست با [AutoData] AutoFixture در تست‌های XUnit و Selenium Populate Test Data with [AutoData] of AutoFixture in XUnit and Selenium tests

  • گسترش TestDataAttribute برای داده های سفارشی در XUnit با تست های سلنیوم Extending TestDataAttribute for Custom data in XUnit with Selenium tests

نمایش نظرات

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

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

آموزش تست اتوماسیون پیشرفته برنامه های مدرن با C#.NET
جزییات دوره
16 hours
140
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
963
4.3 از 5
دارد
دارد
دارد
Karthik KK
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Karthik KK Karthik KK

معمار نرم افزار ، مشاور ، Youtuber و بهترین فروشنده من Karthik K.K هستم من در مورد ابزارها و فن آوری های مختلف مشاوره ، وبلاگ نویسی و تحقیق انجام می دهم که علاقه من را برمی انگیزد. من بیش از 13 سال است که مشغول تست اتوماسیون نرم افزار هستم و علاقه من به یادگیری مطالب جدید که امکان اتوماسیون را فراهم می کند هرگز به خطر نیفتاده است. به دلیل اشتیاق من در تست اتوماسیون ، کاملاً در معرض ابزارها و زبانهایی قرار گرفتم دسک تاپ و وب: QTP ، سلنیوم ، Specflow ، VS Coded UI ، Ranorex ، Test Complete و Cucumber موبایل: Appium ، Robotium ، Calabash ، Espresso ، Selendroid زبان ها: C # ، Java ، Ruby ، Powershell ، Javascript ، VBScript ابزارهای ابری: لاجوردی ، بارانداز Misc Tools: Mockito ، مطمئن باشید ، Bound-Box ، FluentAutomation علاقه مند به: MVC ، چارچوب موجودیت ، LINQ ، جعلی ، استقرار توزیع شده ، SAAS