آموزش تست API با RestSharp در سال 2025 همراه با فریمورک Dev - آخرین آپدیت

دانلود 2025 - API testing with RestSharp along with framework Dev

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

آموزش جامع تست API با RestSharp در دات‌نت 7، XUnit، Specflow و GitHub Actions (آپدیت خرداد 1403)

این دوره آموزشی به صورت جامع، تست API با RestSharp همراه با توسعه فریم‌ورک را پوشش می‌دهد. با دانش اولیه C#، قادر خواهید بود تست‌های کامل API و منطق تجاری را بدون هیچ مشکلی انجام دهید.

هدف دوره:

  • درک کامل مبانی تست API
  • یادگیری RestSharp از پایه تا پیشرفته
  • اجرای تست‌های RestSharp با XUnit
  • اجرای تست‌های RestSharp با XUnit و Dependency Injection برای برنامه‌های در حال اجرا
  • یکپارچه‌سازی RestSharp با Specflow برای BDD (توسعه مبتنی بر رفتار)
  • اجرای موازی تست‌ها با Specflow
  • گزارش‌دهی با Extent Reporting برای تست‌های RestSharp
  • CI/CD تست‌های RestSharp با GitHub Actions
  • تست برنامه‌های GraphQL، Contract Testing و استفاده از Snapshooter برای پاسخ‌های پیچیده JSON

پیش‌نیازها:

  • آشنایی با مبانی Specflow
  • دانش پایه C# (مزیت محسوب می‌شود)
  • دانش پایه درک API

زبان‌ها و کتابخانه‌های مورد استفاده:

  • Visual Studio 2022/Rider با C# 10 و .NET 7
  • RestSharp
  • XUnit
  • Fluent Assertion
  • Specflow
  • Xunit.DependencyInjection
  • WebApplicationFactory
  • Extent Reports
  • GitHub Actions برای CI/CD
  • GraphQL.Client

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

سرفصل‌های کلیدی دوره:

  • مبانی کامل تست API با RestSharp

    • درک کامل کتابخانه‌های مختلف در RestSharp
    • اجرا با متدهای Async و Non-Async
  • عملیات پیشرفته در تست API

    • آپلود فایل
    • احراز هویت JWT
    • تغییر AUT (Application Under Test) بر اساس نیاز تست و بالعکس
  • توسعه فریم‌ورک

    • بازسازی ساده کد
    • درک Dependency Injection
    • ایجاد فریم‌ورک بر اساس الگوهای طراحی در C#
    • ساخت با الگوهای Builder
    • نوشتن کد با کدهای Fluent
  • تست GraphQL

    • درک GraphQL و تست آن‌ها
    • کار با GraphQL.Client
    • نوشتن کد DI با GraphQL Client
  • تست یکپارچه‌سازی برنامه با RestSharp
    • یکپارچه‌سازی Specflow برای پشتیبانی BDD
    • Contract API Testing
    • گزارش‌دهی تست با Extent Reporting
    • CI/CD با GitHub Actions برای اجرای همزمان Application Under Test و تست RestSharp
    • تست مجازی‌سازی سرویس با Mountebank
  • درک نحوه انجام تست با Snapshooter.

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


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

مقدمه دوره Introduction to course

مقدمه دوره Introduction to course

  • مقدمه دوره Introduction to course

درباره اپلیکیشن در حال تست (AUT) About Application Under Test (AUT)

درباره برنامه تحت آزمایش (AUT) About Application Under Test (AUT)

  • مقدمه Introduction

  • کد منبع - اپلیکیشن بدون احراز هویت - مورد استفاده از بخش ۲ Source code - App without Authentication - Used from Section 2

  • کد منبع - اپلیکیشن با احراز هویت - مورد استفاده از بخش ۳ Source code - App with Authentication - Used from Section 3

مبانی API و Testng با RestSharp Basics of API and Testng with RestSharp

مبانی API و تست با RestSharp Basics of API and Testng with RestSharp

  • مبانی API و انواع پروتکل‌ها API Basics and Types of Protocols

  • انواع تست API API Testing Types

  • تست API با RestSharp API Testing with RestSharp

  • شروع کار با تست API با RestSharp Getting Started with API Testing with RestSharp

  • [قابل رد شدن] - Visual Studio 2022 در مقابل Rider IDE برای توسعه C# [Skippable] - Visual Studio 2022 vs Rider IDE for C# Development

  • نوشتن کد تست API ساده با RestSharp Writing simple API test code with RestSharp

  • نحوه مدیریت خطای HTTPS در RestSharp برای تست اپلیکیشن محلی How to handle HTTPS error in RestSharp for local app testing

  • عملیات GET با GetAsync<> GET operation with GetAsync<>

  • عملیات GET با UrlSegments GET operation with UrlSegments

  • عملیات GET با QueryParameter GET operation with QueryParameter

  • عملیات POST با بدنه JSON انواع POST operation with Types JSON body

  • خلاصه Summary

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

عملیات تست API پیشرفته با RestSharp Advanced API Test operation with RestSharp

عملیات تست API پیشرفته با RestSharp Advanced API Test operation with RestSharp

  • مقدمه Introduction

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

  • اجرای تست‌ها همراه با اپلیکیشن در حال تست Running Tests along with Application Under Test

  • تست آپلود فایل با RestSharp FileUpload testing with RestSharp

  • احراز هویت با توکن JWT Authentication with JWT Token

  • احراز هویت با توکن JWT - بخش ۲ Authentication with JWT Token - Part 2

  • افزودن احراز هویت در سناریوهای موجود Adding Authentication in existing scenarios

  • کد منبع Source code

Refactoring و Framework Development با RestSharp Refactoring and Framework Development with RestSharp

بازسازی و توسعه چارچوب با RestSharp Refactoring and Framework Development with RestSharp

  • مقدمه Introduction

  • بازسازی کد ساده برای RestClient Simple code refactor for RestClient

  • مدیریت اشیاء با IClassFixtures Handling objects with IClassFixtures

  • مقدمه‌ای بر تزریق وابستگی Introduction to Dependency Injection

  • تزریق وابستگی در عمل Dependency Injection in action

  • مقدمه ای بر توسعه چارچوب Introduction to Framework development

  • ساخت چارچوب با الگوی Builder Building Framework with Builder Pattern

  • ایجاد RestClient با پیاده سازی Factory Creating RestClient with Factory Implementation

  • مهاجرت کد موجود با کدنویسی روان Migrating existing code with fluent coding

  • تغییر کامل چارچوب در کد موجود Complete framework change in existing code

  • کد منبع Source code

تست یکپارچه‌سازی API با RestSharp و اپلیکیشن در حافظه Integration Testing of API with RestSharp and In-Memory Application

  • مقدمه ای بر تست یکپارچه‌سازی در C# .NET Introduction to Integration Testing in C# .NET

  • اجرای اپلیکیشن در حافظه با WebApplicationFactory Running Application In-Memory with WebApplicationFactory

  • نوشتن مجوز برای نقطه پایانی API با نقطه پایانی در حافظه Writing Authorisation of API endpoint with In-Memory Endpoint

  • استفاده از RestSharp با WebApplicationFactory به عنوان یک شیء یکسان Using RestSharp with WebApplicationFactory as same Object

  • ترکیب چارچوب RestSharp با WebApplicationFactory Fusing RestSharp Framework with WebApplicationFactory

  • کد منبع Source code

ادغام Specflow و WebApplicationFactory با RestSharp Specflow and WebApplicationFactory Integration with RestSharp

ادغام Specflow و WebApplicationFactory با RestSharp Specflow and WebApplicationFactory Integration with RestSharp

  • معرفی Introduction

  • برنامه بوت استرپ با WebApplicationFactory Bootstrapping application with WebApplicationFactory

  • شروع با Specflow و ایجاد سناریو Getting Started with Specflow and creating scenario

  • پیاده سازی تعاریف مرحله برای تست RestSharp Implementing Step definitions for RestSharp test

  • اجرای تست Specflow با RestSharp Running Specflow test with RestSharp

  • کد منبع Source code

ادغام Specflow با RestSharp Specflow Integration with RestSharp

  • مقدمه Introduction

  • راه‌اندازی اپلیکیشن با WebApplicationFactory Bootstrapping application with WebApplicationFactory

  • شروع کار با Specflow و ایجاد سناریو Getting Started with Specflow and creating scenario

  • پیاده سازی تعاریف گام برای تست RestSharp Implementing Step definitions for RestSharp test

  • اجرای تست Specflow با RestSharp Running Specflow test with RestSharp

  • کد منبع Source code

تست GraphQL در C#.NET Testing GraphQL in C# .NET

تست GraphQL در C#.NET Testing GraphQL in C# .NET

  • معرفی Introduction

  • نوشتن کد ساده برای تست GraphQL Writing simple code to test GraphQL

  • اجرای تست GraphQL با XUnit و FluentAssertion برای اعتبارسنجی Running GraphQL Test with XUnit and FluentAssertion for validation

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

  • کد منبع Source code

ارتقاء به .NET 7 و RestSharp v110 Upgraded to .NET 7 and RestSharp v110

  • کد منبع ارتقا یافته به .NET 7 و RestSharp v110 Source code upgraded to .NET 7 and RestSharp v110

تست قرارداد Contract Testing

تست قرارداد Contract Testing

  • مقدمه ای بر تست قرارداد (ویدیو از EA Weekly) Introduction to Contract Testing (Video from EA Weekly)

  • ایجاد تست قرارداد - کلاس پیمان نوشتن Creating contract testing - Writing Pact class

  • تست قرارداد - نوشتن تست قرارداد مصرف کننده Contract Testing - Writing consumer contract test

  • تست قرارداد - آزمون نوشتن قرارداد ارائه دهنده Contract Testing - Writing provider contract test

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

کار با پاسخ JSON پیچیده و تاییدهای پیچیده Working with Complex JSON Response and complex assertions

  • مقدمه Introduction

  • تغییر در اپلیکیشن در حال تست برای سناریوهای پیچیده Change in Application Under Test For complex scenarios

  • نوشتن سناریوی پیچیده برای دو درخواست API مشابه Writing complex scenario for two similar API request

  • نادیده گرفتن ویژگی DateTime از تایید در پاسخ پیچیده Ignoring DateTime property from Assertion in complex response

  • تایید پاسخ با ساختار JSON تو در تو Asserting response with nested JSON structure

  • کد منبع Source code

تست میکروسرویس با استفاده از مجازی سازی سرویس با استفاده از MounteBank Microservice testing using Service Virtualization using MounteBank

تست میکروسرویس با استفاده از مجازی سازی سرویس با استفاده از MounteBank Microservice testing using Service Virtualization using MounteBank

  • سلب مسئولیت Disclaimers

  • مقدمه ای بر تست میکروسرویس ها Introduction to Microservices testing

  • سناریوی خودکارسازی در میکروسرویس Scenario to automate in Microservice

  • سرور JSON محلی و سرور JSON Docker را راه اندازی کنید Setup Local JSON server and Docker JSON server

  • کد سرور JSON Dockerized Dockerized JSON Server code

  • راه اندازی MounteBank در ویژوال استودیو و ماشین محلی و دسترسی به فریبکاران MounteBank setup in Visual studio and local machine and access imposters

  • درک محمول ساده و پیچیده و ResponseJSON در MounteBank Understanding Simple and Complex predicate and ResponseJSON in MounteBank

  • کار با محمولات ساده با مجازی سازی سرویس پروفایل با MounteBank Working with Simple Predicates by Virtualizing Profile service with MounteBank

  • پس از هر سناریویی که در Specflow اجرا می شود، Imposters را حذف کنید Delete Imposters after every scenario executed in Specflow

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

پشتیبانی از گزارش‌دهی Extent Extent Reporting support

  • مقدمه Introduction

  • مقداردهی اولیه ExtentReport در پروژه ما در Hooks Initialising ExtentReport within our project in Hooks

  • ایجاد گزارش Extent با تعاریف گام Creating Extent Report with Step definitions

  • تایید سناریوهای ناموفق در گزارش‌های Extent Verifying Failing scenarios in Extent Reports

  • کد منبع Source code

تست عکس فوری با Snapshooter - برای آزمایش شیء با پاسخ پیچیده Snapshot Testing with Snapshooter - For Complex Response Object Testing

تست عکس فوری با Snapshooter - برای آزمایش شیء با پاسخ پیچیده Snapshot Testing with Snapshooter - For Complex Response Object Testing

  • معرفی Snapshooter Introduction to Snapshooter

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

  • کار با شی پاسخ پیچیده Working with Complex response object

  • Snapshooter در CI/CD و Summary Snapshooter in CI/CD and Summary

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

CI/CD با GitHub Actions همراه با اپلیکیشن در حال تست CI/CD with GitHub Actions along with Application Under Test

  • مقدمه Introduction

  • ثبت کد در مخزن GitHub Checking-In code in GitHub Repo

  • ایجاد گردش کار GitHub Actions Creating GitHub Actions Workflow

  • درک اجرای AUT و تست‌ها از طریق Docker و خط فرمان Understanding Running AUT and Tests via docker and commandline

  • اجرای AUT از طریق Docker compose در GitHub Actions Running AUT via Docker compose in GitHub Actions

  • آپلود مصنوعات تست (گزارش‌های Extent) پس از اجرای Build در GitHub Action Uploading Test Artifacts (Extent Reports) after build execution in GitHub Action

  • فایل گردش کار GitHub Actions GitHub Actions workflow file

  • کد منبع Source code

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

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

  • مقدمه ای بر 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

تست GraphQL در C# .NET Testing GraphQL in C# .NET

  • مقدمه Introduction

  • نوشتن کد ساده برای تست GraphQL Writing simple code to test GraphQL

  • اجرای تست GraphQL با XUnit و FluentAssertion برای اعتبارسنجی Running GraphQL Test with XUnit and FluentAssertion for validation

  • تزریق وابستگی برای کلاینت GraphQL Dependency Injection for GraphQL Client

  • کد منبع Source code

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

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

  • چرا Specflow و مزایای داشتن آن چیست؟ Why Specflow and what's the benefit of having it?

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

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

  • آشنایی با قلاب های Specflow Understanding 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

تست قرارداد Contract Testing

  • مقدمه‌ای بر تست قرارداد (ویدئو از EA Weekly) Introduction to Contract Testing (Video from EA Weekly)

  • ایجاد تست قرارداد - نوشتن کلاس Pact Creating contract testing - Writing Pact class

  • تست قرارداد - نوشتن تست قرارداد مصرف کننده Contract Testing - Writing consumer contract test

  • تست قرارداد - نوشتن تست قرارداد ارائه‌دهنده Contract Testing - Writing provider contract test

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

تست میکروسرویس با استفاده از مجازی سازی سرویس با MounteBank Microservice testing using Service Virtualization using MounteBank

  • سلب مسئولیت Disclaimers

  • مقدمه ای بر تست میکروسرویس‌ها Introduction to Microservices testing

  • سناریو برای خودکارسازی در میکروسرویس Scenario to automate in Microservice

  • تنظیم سرور JSON محلی و سرور JSON Docker Setup Local JSON server and Docker JSON server

  • کد سرور JSON Docker Dockerized JSON Server code

  • راه اندازی MounteBank در Visual Studio و ماشین محلی و دسترسی به imposters MounteBank setup in Visual studio and local machine and access imposters

  • درک predicate ساده و پیچیده و ResponseJSON در MounteBank Understanding Simple and Complex predicate and ResponseJSON in MounteBank

  • کار با Predicate های ساده با مجازی سازی سرویس Profile با MounteBank Working with Simple Predicates by Virtualizing Profile service with MounteBank

  • حذف Imposters پس از اجرای هر سناریو در Specflow Delete Imposters after every scenario executed in Specflow

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

تست اسنپ شات با Snapshooter - برای تست اشیاء پاسخ پیچیده Snapshot Testing with Snapshooter - For Complex Response Object Testing

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

  • نصب و شروع کار Installation and Getting started

  • کار با شیء پاسخ پیچیده Working with Complex response object

  • Snapshooter در CI/CD و خلاصه Snapshooter in CI/CD and Summary

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

[دوره فشرده] - XUnit با Selenium، AutoFixture و Fluent Assertions [Crash Course] - XUnit with Selenium, AutoFixture and Fluent Assertions

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

  • تزریق Context در XUnit و ایجاد کلاس Fixture برای ایجاد و پاکسازی شیء XUnit Context Injection and creating Fixture class to create and dispose object

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

  • DDT با [MemberData] و سفارشی سازی آن برای [Theory] 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?

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

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

  • ایجاد داده‌های تست سفارشی با الگوی Builder در 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 با تست‌های Selenium Extending TestDataAttribute for Custom data in XUnit with Selenium tests

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

  • چرا Specflow و چه مزایایی دارد؟ Why Specflow and what's the benefit of having it?

  • نصب و شروع کار Installation and getting started

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

  • درک Specflow Hooks Understanding 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

  • تزریق Context در Specflow Context Injection of Specflow

نمایش نظرات

آموزش تست API با RestSharp در سال 2025 همراه با فریمورک Dev
جزییات دوره
11 hours
112
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
5,932
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