آموزش پلی‌رایت با تایپ‌اسکریپت (تست وب و API) - آخرین آپدیت

دانلود Learn Playwright with TypeScript (Web & API Testing)

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

آموزش جامع تست اتوماتیک وب با Playwright و TypeScript

یادگیری تست اتوماتیک وب مدرن و end-to-end با یکی از سریع‌ترین ابزارهای در حال رشد در دنیای تست. این دوره شما را از سطح مبتدی به متخصص Playwright تبدیل می‌کند.

آنچه در این دوره خواهید آموخت:

  • راه‌اندازی Playwright با Node.js و TypeScript
  • تعامل با عناصر رابط کاربری با استفاده از CSS، متن و selectorهای مبتنی بر نقش
  • اتوماتیک‌سازی جریان‌های کاربری واقعی: کلیک کردن، تایپ کردن، dropdownها، آپلود فایل، هشدارها، iframeها و موارد دیگر
  • مدیریت waitهای پویا، assertionهای تست و داده‌های تست
  • اجرای تست‌ها در حالت headless و headed در مرورگرهای مختلف
  • پیکربندی اجرای تست موازی و مکانیسم‌های retry
  • ساخت ابزارهای تست قابل استفاده مجدد و page objectها با استفاده از fixtureها
  • ادغام تست API در جریان‌های اتوماسیون UI
  • گرفتن screenshot، ضبط ویدیو و تولید گزارش‌های تست پیشرفته
  • اتصال Playwright با Allure، ابزارهای CI و GitHub Actions (ماژول اختیاری)
  • نحوه استفاده از Playwright MCP به همراه GitHub Copilot.

چرا Playwright؟

Playwright یک فریم‌ورک اتوماسیون متن‌باز است که توسط Microsoft توسعه داده شده است. این فریم‌ورک امکان تست سریع، قابل اعتماد و cross-browser برنامه‌های وب مدرن را در Chromium، Firefox و WebKit فراهم می‌کند.

Playwright با ویژگی‌های پیشرفته‌ای مانند auto-waiting، اجرای تست موازی، تست screenshot و پشتیبانی از multi-tab، جایگزین مدرن‌تری برای ابزارهای سنتی مانند Selenium است.

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

چرا TypeScript؟

TypeScript برای Playwright ترجیح داده می‌شود زیرا اتوماسیون را با ابزارهای بهتر و قابلیت اطمینان کد افزایش می‌دهد. مزایای کلیدی عبارتند از:

  • Static typing برای شناسایی خطاها در زمان کامپایل
  • Rich IntelliSense و auto-completion در ویرایشگرهایی مانند VS Code
  • Built-in Playwright type definitions برای استفاده بهتر از API
  • Improved maintainability and scalability برای مجموعه تست‌های بزرگ
  • Modern JavaScript features + additional TypeScript features
  • Seamless integration with CI/CD pipelines در پروژه‌های حرفه‌ای

این دوره برای چه کسانی مناسب است؟

  • تسترهای دستی که به سمت اتوماسیون تغییر می‌کنند
  • مهندسان QA / SDET که از Selenium یا ابزارهای دیگر ارتقا می‌دهند
  • توسعه‌دهندگانی که تست‌های end-to-end را به برنامه‌های خود اضافه می‌کنند
  • دانشجویان و فارغ‌التحصیلان جدید که برای نقش‌های تست اتوماسیون آماده می‌شوند

هیچ تجربه اتوماسیون قبلی لازم نیست. این دوره از مبانی شروع می‌شود و گام به گام با توضیحات واضح و مثال‌های عملی پیشرفت می‌کند.

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

  • Playwright - ابزار رایگان
  • TypeScript - ابزار رایگان
  • Visual Studio Code (VS Code) - ابزار رایگان
  • Git and GitHub - ابزار رایگان
  • Allure Reporting - ابزار رایگان

شامل چه مواردی است:

  • محتوای 100% عملی و hands-on
  • مثال‌های اتوماسیون تست واقعی
  • کد بیس قابل دانلود و منابع یادگیری
  • سوالات و پاسخ‌های مصاحبه
  • آزمون‌ها و تکالیف برای تمرین
  • دسترسی مادام‌العمر و گواهینامه Udemy

در پایان این دوره، شما:

  • فریم‌ورک‌های اتوماسیون Playwright قوی با استفاده از TypeScript می‌سازید
  • چرخه عمر کامل تست را با موارد استفاده واقعی در زمان واقعی درک خواهید کرد
  • آماده شرکت در مصاحبه‌های اتوماسیون یا کار بر روی پروژه‌های Playwright خواهید بود
  • مهارت‌های اتوماسیون وب مورد نیاز در سراسر صنعت را کسب خواهید کرد

سرفصل‌های دوره جامع Playwright با TypeScript

ماژول 1: مقدمه‌ای بر Playwright

  • مقدمه‌ای بر تست اتوماسیون
  • Playwright چیست؟
  • ویژگی‌های کلیدی Playwright
  • ابزارهای Playwright
  • مقایسه Playwright و Selenium
  • مقایسه JavaScript و TypeScript
  • چرا از TypeScript استفاده کنیم؟
  • معماری Playwright

ماژول 2: برنامه‌نویسی TypeScript

مقدمه و تنظیمات محیط TypeScript

  • TypeScript چیست؟
  • راه‌اندازی Node.js و VS Code
  • نصب کامپایلر TypeScript
  • Transpiling .ts به .js

متغیرها

  • نحوه استفاده از let، const، var
  • Scope و hoisting

انواع داده

  • Number، String، Boolean
  • any، unknown، void، null، undefined
  • Type Annotation و type inference

عملگرها

  • Arithmetic، Logical، Comparison، Assignment
  • Ternary Operator

عبارات شرطی

  • if، else، else if
  • switch case

حلقه‌ها

  • for، while، do..while
  • for...of، for...in

توابع

  • Function declarations & expressions
  • Optional and default parameters
  • Rest parameters و return types

توابع Callback & Overloaded

  • نوشتن callbacks
  • Function overloading در TypeScript

آرایه‌ها و Tuples

  • اعلام و دسترسی به آرایه‌ها
  • Fixed-length Tuples و type constraints

متدهای آرایه

  • push()، pop()، shift()، unshift()
  • slice()، splice()، map()، filter()، reduce()، forEach()
  • find()، includes()، some()، every()

متدهای رشته

  • substring()، substr()، slice()
  • indexOf()، includes()، replace()، split()، trim()

ایجاد Object

  • Object Literals & Inline objects
  • استفاده از type alias و class

ویژگی‌های کلاس

  • ایجاد کلاس‌ها
  • Readonly properties
  • Static variables و methods
  • Method overloading

وراثت و کنترل دسترسی

  • extends، super، method overriding
  • Access modifiers: public، private، protected

Interfaceها و ماژول‌ها

  • تعریف و پیاده‌سازی interfaceها
  • Importing/exporting modules

کار با فایل‌ها (خواندن داده‌ها از فایل‌ها)

  • JSON File
  • CSV File
  • Excel file

ماژول 3: اتوماسیون Playwright

شروع کار

  • نصب Playwright
  • مقداردهی اولیه پروژه Playwright
  • درک ساختار پروژه
  • نوشتن اولین تست
  • مبانی Async/await و Promise
  • اجرای تست‌ها (حالت headless/headed)
  • اجرای تست‌های خاص و تست‌های متعدد
  • تولید گزارش‌های تست HTML
  • مروری بر UI Mode

Locatorsهای Playwright

  • getByText، getByRole، getByLabel
  • locator()، page.locator()

CSS Locators

  • Tag، ID، Class، Attribute selectors
  • Combinators

XPath و عناصر Dynamic

  • نوشتن XPath اساسی
  • رسیدگی به مقادیر ویژگی dynamic

XPath Axis

  • parent، child، ancestor، following-sibling، descendant
  • ساخت XPath نسبی

اعمال اساسی

  • تایپ متن، کلیک کردن روی دکمه‌ها
  • رسیدگی به دکمه‌های رادیویی، چک باکس‌ها

Capture Text عناصر

  • innerText() vs textContent()
  • allInnerTexts() vs allTextContents()
  • all() Method

Dropdownها

  • Static vs dynamic dropdowns
  • Hidden & Bootstrap dropdowns
  • selectOption() method

Web Tables

  • Static and Dynamic Web Tables
  • Pagination Tables
  • Traversing rows and columns
  • Filtering data in a table
  • Validating table data

Date Pickers

  • انتخاب تاریخ‌ها از رابط‌های کاربری تقویم
  • رسیدگی به ماه‌ها/سال‌های dynamic

Browser Context & Pages

  • کار با contextهای جدید
  • Multi-tab و sessions ایزوله شده

Dialogها، Windowها و Tabها

  • رسیدگی به هشدارها، promptها، confirm dialogها
  • تغییر بین tabها/windowها

iFrames

  • یافتن عناصر در داخل iframes
  • تغییر contextها

Mouse Actions

  • Hover، right-click، double-click، drag & drop

Scrolling

  • Scrolling به عناصر
  • تکنیک‌های Infinite scrolling

Keyboard Actions

  • شبیه‌سازی فشردن کلید
  • تایپ با تاخیر

File Upload

  • استفاده از setInputFiles()

Shadow DOM

  • رسیدگی به Shadow DOM & Nested Shadow DOM Elements

Browser Context Settings

  • Cookies
  • Viewport
  • Handle Proxy
  • Handle SSL

ماژول 4: ویژگی‌های پیشرفته Playwright

Auto-waiting، Timeouts & Assertions

  • مکانیسم Auto-waiting
  • Test و Expect Timeouts
  • Assertions (Auto-retrying & Non-retrying assertions)
  • Negating matchers
  • Hard & Soft assertions

ضبط تست‌ها (Test Generator/Codegen)

  • ضبط تست‌ها با استفاده از Codegen
  • شناسایی locators در Codegen
  • اصلاح تست‌های تولید شده
  • اشکال‌زدایی

Screenshots & Videos

  • گرفتن screenshots
  • ضبط اجرای تست

Tracing با Trace Viewer

  • فعال کردن tracing
  • باز کردن فایل‌های trace برای اشکال‌زدایی
  • Retries و رسیدگی به تست‌های Flaky

Grouping Tests & Hooks

  • grouping tests با describe()
  • Hooks - beforeAll، afterAll، beforeEach، afterEach

Tagging & Annotations

  • Annotations - only، skip، slow، fail، fixme
  • Tagging Tests

Parallel Test Execution

  • تنظیم parallelism در config
  • Worker-level isolation
  • محدود کردن workers

Parameterization

  • روش‌های مختلف Parameterize داده‌ها به تست‌ها
  • Data Driven Testing با External files (JSON, CSV & Excel)

Reporting

  • Default reports
  • ادغام Allure Reporter

Page Object Model (POM)

  • ایجاد کلاس‌های صفحه قابل استفاده مجدد
  • Encapsulating page actions

اجرای تست‌ها با استفاده از package.json

  • نوشتن command scripts در package.json
  • اجرای تست‌ها با استفاده از package.json

Visual Testing/Visual Comparisons

  • ایجاد Screen shots
  • مقایسه snapshotها

Accessibility Testing

  • اسکن کل صفحه
  • اسکن قسمت خاصی از صفحه
  • اسکن برای WCAG violations
  • غیرفعال کردن اسکن قوانین فردی
  • استفاده از fixture تست برای پیکربندی axe مشترک

ماژول 5: طراحی و توسعه Framework

مقدمه‌ای بر Framework

  • مقدمه‌ای بر Automation Framework
  • مراحل طراحی Framework

طراحی و توسعه Framework

  • Pre-requisites و راه‌اندازی پروژه
  • ایجاد پروژه جدید و نصب وابستگی‌ها/بسته‌های مورد نیاز
  • ایجاد ساختار پوشه
  • درک فایل‌های پیکربندی
  • اضافه کردن پیکربندی‌های مورد نیاز در فایل playwright.config
  • ایجاد فایل testconfig
  • ایجاد کلاس‌های Page Object
  • استراتژی‌های رسیدگی به خطا در حین ایجاد page objects/tests
  • تهیه فایل‌های داده تست (json & Csv)
  • ایجاد فایل‌های utility مانند dataproviders (برای تجزیه فایل‌های json و csv)
  • تولید داده‌های تست تصادفی با استفاده از faker library
  • اضافه کردن تست caseها
  • اضافه کردن برچسب‌ها به تست‌ها و اجرای آنها
  • تولید گزارش‌های HTML & Allure
  • اجرای موازی و سریالی
  • اضافه کردن اسکریپت به package.json
  • اجرای تست‌ها با استفاده از package.json

CI/CD & Git Integration

Version Control

  • کار با Git و GitHub
  • Playwright GitHub Workflow Actions

Jenkins، CI/CD

  • Jenkins + Playwright Integration
  • اجرای تست‌های playwright در Jenkins
  • مقدمه‌ای بر CI/CD pipelines
  • ایجاد و راه‌اندازی jobs از طریق Pipeline

ماژول 6: تست API با Playwright

REST API Requests

  • ایجاد درخواست‌های GET، POST، PUT، PATCH & DELETE
  • ایجاد Post request body با استفاده از Static Data، JSON Files و Dynamic Data
  • Faker library برای تولید داده‌های تصادفی/dynamic
  • Passing Path و Query Parameters
  • API Chaining

Validating Responses

  • Status codes، headers، JSON body validation

Authentications

  • Basic، Token & API Key Authentications

ماژول 7: Playwright Powered by AI

مبانی Generative AI

  • Prompting چیست؟
  • LLMها چیست؟
  • محدودیت‌های LLMها
  • Agent چیست؟
  • درک Model Context Protocol (MCP)
  • کار با GitHub Copilot

Playwright MCP + Copilot for Generating & Running tests

  • MCP چیست؟ پیکربندی Playwright MCP در VSCode
  • ایجاد context تست و تست caseها
  • تولید Web/UI & API tests با استفاده از Copilot & MCP
  • VSCode playwright test extension برای مدیریت تست‌ها
  • Vibe Coding

این دوره یک مسیر یادگیری کامل برای تسلط بر اتوماسیون وب با استفاده از Playwright با TypeScript ارائه می‌دهد. چه تازه شروع کرده باشید و چه به دنبال ارتقاء مهارت‌های خود باشید، این دوره هر آنچه را که برای تبدیل شدن به یک مهندس اتوماسیون Playwright مطمئن نیاز دارید، فراهم می‌کند.

پیش نیازها

  • مفاهیم اولیه تست
  • آشنایی با مبانی برنامه نویسی
  • دانش پایه از فناوری های وب

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

Introduction to Playwright and TypeScript

  • مقدمه Introduction

برنامه نویسی با TypeScript TypeScript Programming

  • مقدمه‌ای بر TypeScript و راه‌اندازی محیط Introduction to TypeScript & Setup Environment

  • متغیرها در TypeScript TypeScript Variables

  • انواع داده در TypeScript Data Types in TypeScript

  • عملگرها در TypeScript Operators in TypeScript

  • عبارات شرطی Conditional Statements

  • حلقه‌ها در TypeScript Loops in TypeScript

  • توابع – قسمت اول Functions - Part1

  • توابع – قسمت دوم Functions - Part 2

  • آرایه‌ها در TypeScript Arrays in TypeScript

  • متدهای آرایه – قسمت اول Array Methods- Part1

  • متدهای آرایه – قسمت دوم Array Methods-Part2

  • رشته‌ها Strings

  • اشیاء Objects

  • خصوصیات فقط خواندنی، اختیاری و Overloading Read Only, Optional Properties & Overloading

  • وراثت Inheritance

  • Interface و ماژول‌ها Interface and Modules

Playwright با استفاده از TypeScript (تست اتوماسیون وب End-To-End) Playwright using TypeScript (End-To-End Web Automation Testing)

  • شروع سریع با Playwright Playwright Kick Start

  • درک Locators در Playwright (Built-in) Understanding Playwright Locators (Built-in)

  • یافتن عناصر با استفاده از CSS Locators Locating Elements using CSS Locators

  • یافتن عناصر با استفاده از XPath، عملگرها و توابع در XPath Locating Elements using XPath, Operators and functions in XPath

  • یافتن عناصر پیچیده با استفاده از XPath Axes Locating complex elements using XPath Axes

  • اکشن‌های Playwright – جعبه ورودی، چک باکس و دکمه‌های رادیویی Playwright Actions-Input Box, Check box & Radio buttons

  • مدیریت Dropdown‌ها – قسمت اول Handle Dropdowns -Part 1

  • مدیریت Dropdown‌ها – قسمت دوم Handle Dropdowns- Part 2

  • مدیریت جدول‌های وب ثابت در Playwright (سطرها و ستون‌های ثابت در یک جدول) Handle Static Web Table in Playwright (Fixed Rows & Columns in a table)

  • مدیریت جدول‌های پویا و صفحه‌بندی (سطرها، ستون‌ها و داده‌های پویا) Handle Dynamic & Pagination Tables ( Dynamic Rows, Columns and data)

  • مدیریت Date Pickerها (عناصر سفارشی) Handling Date Pickers (Customized Elements)

  • مدیریت Dialogها و Frame/IFrames Handling Dialogs and Frames/IFrames

  • Browser Context در Playwright، مدیریت تب‌ها و پنجره‌های Popup Playwright Browser Context, Handle Tabs & Popup Windows

  • مدیریت اکشن‌های ماوس و اسکرول در Playwright Handling Mouse Actions and Scrolling in Playwright

  • مدیریت اکشن‌های کیبورد، آپلود و دانلود فایل در Playwright Handling Keyboard actions, File Upload & Download in Playwright

  • مدیریت Shadow DOM، SSL، Proxy و Cookies Handle Shadow DOM ,SSL, Proxy & Cookies

ویژگی‌های پیشرفته Playwright Playwright Advanced Features

  • انتظار خودکار، Timeouts، Assertions و تولید کننده تست (Codegen) Auto waiting, Timeouts, Assertions and Test Generator (Codegen)

  • گرفتن اسکرین‌شات، ضبط ویدئو برای تست، Trace Viewer و مدیریت تست‌های Flaky Capture Screenshots, Record videos for test, Trace Viewer and Handle Flaky Tests

  • گروه‌بندی تست‌ها، Hooks، Annotations و برچسب‌گذاری تست‌ها Grouping Tests, Hooks, Annotations & Tagging Tests

  • موازی‌سازی / تست موازی Parallelism/Parallel Testing

  • پارامتری‌سازی (تست داده‌محور با فایل‌های JSON، CSV و Excel) Parameterization ( Data Driven Testing with JSON, CSV & Excel Files)

  • گزارش‌های Playwright و گزارش‌های Allure Playwright Reports & Allure Reports

  • تست بصری با Playwright Visual Testing with Playwright

  • تست قابلیت دسترسی با Playwright Accessibility Testing with Playwright

  • مدل شیء صفحه (Page Object Model) Page Object Model

طراحی و توسعه فریم‌ورک اتوماسیون (گام به گام) Automation Framework Design and Development (Step By Step)

  • مقدمه‌ای بر فریم‌ورک و تنظیم ساختار پروژه و وابستگی‌ها Introduction To Framework & Setup Project structure and dependencies

  • خودکارسازی تست کیس‌ها، تست‌های داده‌محور و اجرای تست کیس‌ها با تگ‌ها Automate Test cases, Data Driven Tests and Execute test cases with Tags

  • خودکارسازی تست کیس‌های End-To-End و اجرای تست‌ها با استفاده از فایل Package.json Automate End-To-Test Cases and Run Tests using Package.json file

مفاهیم CI (Git, GitHub و Jenkins) CI Concepts (Git, GitHub & Jenkins)

  • کار با Git و GitHub – قسمت اول (دستورات Git CLI) Working with Git and GitHub -Part1 (Git CLI Commands)

  • کار با Git و GitHub – قسمت دوم (Branching، ارسال Pull Request و Merging) Working with Git and GitHub-Part2 ( Branching, Raising Pull Requests & Merging)

  • GitHub Workflow Actions در Playwright، یکپارچه‌سازی مداوم با Jenkins و Pipeline Playwright GitHub Workflow Actions,Continuous Integration with Jenkins& Pipeline

تست API با Playwright API Testing with Playwright

  • مقدمه‌ای بر تست API، انواع درخواست‌های HTTP و ساخت بدنه درخواست Post Introduction to API Testing, Types of HTTP Requests & Creating Post request body

  • اعتبارسنجی درخواست‌های مختلف HTTP، Path و Query Parameters، Chaining درخواست Validation of different HTTP requests, Path & Query Parameters, Chaining request

  • احراز هویت‌های API و اعتبارسنجی شمای با استفاده از Ajv API Authentications and Schema validations using Ajv

Playwright با پشتیبانی AI Playwright Powered by AI

  • Playwright با MCP + GitHub Copilot Playwright with MCP + GitHub Copilot

  • افزونه VS Code برای Playwright Test (اجرا و دیباگ کردن تست‌های Playwright) VS Code Extension for Playwright Test (Running and debugging Playwright tests)

نمایش نظرات

آموزش پلی‌رایت با تایپ‌اسکریپت (تست وب و API)
جزییات دوره
70 hours
53
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
6,304
4.7 از 5
دارد
دارد
دارد
Pavan Kumar
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Pavan Kumar Pavan Kumar

مشاور فنی ارشد