آموزش Cypress: تست اتوماسیون وب از صفر تا قهرمان

Cypress: Web Automation Testing from Zero to Hero

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: اتوماسیون رابط کاربری وب E2E از ابتدا. به روز شده با Cypress v12 (01/2023) اصول جاوا اسکریپت برای مبتدیان در برنامه نویسی نحوه تنظیم و پیکربندی Cypress نحوه ساخت مکان یاب برای هر عنصر وب با استفاده از موتور قدرتمند انتخابگر جی کوئری داخلی Cypress (فراموش کردن X-Path) چگونه برای تعامل و خودکار کردن هر نوع مؤلفه وب API چیست. نحوه تعامل با API ها، تمسخر پاسخ API و اظهار نظر. همچنین نحوه ایجاد پیش شرط داده های آزمایشی با استفاده از فراخوانی های API نحوه سازماندهی و استفاده مجدد کد با الگوی طراحی شیء صفحه. نحوه پیکربندی چندین گزارشگر سفارشی، امتحان مجدد منطق برای تست های ناموفق و اجرای تست در کانتینر داکر اجرای تست موازی، داشبورد Cypress، مرورگر متقابل و تست ویژوال پیش نیازها: بدون نیاز به پیش نیاز است. این دوره از پایه حتی برای افراد مبتدی آموزش می دهد. خجالت نکشید وقتی چیزی واضح نیست یا کار نمی کند از مربی سوال بپرسید.

این کلاس به شما درک کاملی از چیستی فریمورک Cypress می دهد و یاد می گیرید که چگونه از تمام قابلیت های فریمورک کلیدی استفاده کنید. Cypress یک چارچوب بسیار مدرن مبتنی بر جاوا اسکریپت است. همه چیزهایی را که شما نیاز دارید در اختیار دارد: Test Runner، کتابخانه‌های Assertion، خبرنگاران و غیره. بسیار زیبا و به راحتی می تواند در برنامه front-end ادغام شود (این همان کاری است که ما در کلاس انجام خواهیم داد) و تست های شما در همان حلقه اجرای برنامه شما اجرا می شود. به همین دلیل است که این فریم ورک بسیار سریع است! و اگر قبلا از جاوا اسکریپت استفاده نکرده اید نگران نباشید. نوشتن تست‌های اتوماسیون در Cypress بیشتر شبیه به دانستن دنباله‌ای از دستورات Cypress است که برای انجام برخی اقدامات در مرورگر باید فراخوانی کنید. واقعا برنامه نویسی نیست این نوعی اسکریپت نویسی است که از قوانین Cypress پیروی می کند. برای کسانی که تازه با برنامه نویسی آشنا هستند - بخشی در مورد اصول جاوا اسکریپت

وجود دارد

ما با مفاهیم بسیار ابتدایی Web UI Automation شروع خواهیم کرد، بنابراین شما از ابتدا پایه درستی خواهید داشت (از صفر). حتی اگر در آینده از فریمورک دیگری برای اتوماسیون وب استفاده کنید، اصول اولیه این کلاس برای همیشه با شما خواهد ماند و بسیار مفید خواهد بود. من قول می دهم که در ساخت مکان یاب برای هر عنصر وب در صفحه یک قهرمان خواهید بود. این یکی از مهم ترین بخش های اتوماسیون UI است و من دقایق زیادی را به توضیح دقیق آن اختصاص داده ام.

بر خلاف بسیاری از چارچوب‌های اتوماسیون دیگر، Cypress می‌تواند با APIها نیز تعامل داشته باشد و شما می‌توانید آزمایش API را در واقع با Cypress خودکار کنید. بنابراین، اگر نمی دانید API در مورد چیست، ما با Zero شروع می کنیم و هر آنچه را که باید در مورد قابلیت های Cypress برای تعامل با API بدانید، یاد می گیریم. من ساخت چارچوب اتوماسیون API بر اساس Cypess را توصیه نمی کنم، اما قابلیت API آن در تست E2E بسیار مفید است و موارد استفاده آن را در این کلاس پوشش خواهیم داد.

و ما قطعاً از طریق Page Objects می گذریم که استفاده از آن بسیار مهم است! هنگامی که 10 تا 20 تست دارید، می توانید کد خود را همانطور که هست حفظ کنید، اما زمانی که 200-300 تست دارید، قابلیت نگهداری چارچوب تست اولویت شماره یک است. ساختار صحیح اشیاء صفحه کلیدی برای قابلیت استفاده مجدد کد (بدون کپی/پیست کردن کد شما) و قابلیت نگهداری است.

همچنین موضوعات پیشرفته مختلفی مانند متغیرهای محیطی، راه اندازی چندین گزارشگر، امتحان مجدد cypress برای تست های ناموفق را مرور خواهیم کرد و در نهایت، تست ها را در Docker Container اجرا خواهیم کرد. اگر این اولین تجربه شما با Docker است، جای نگرانی نیست، در مورد مفاهیم اولیه Docker نیز صحبت خواهیم کرد.

تا پایان کلاس، به من اعتماد کنید، شما یک قهرمان سرو خواهید شد :)


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

معرفی Introduction

  • معرفی Introduction

  • Cypress vs Selenuim Cypress vs Selenuim

  • یادداشت سریع Quick Note

  • آماده سازی محیط توسعه Preparation of development environment

مبانی جاوا اسکریپت JavaScript Fundamentals

  • نمای کلی ماژول Module overview

  • سلام دنیا Hello World

  • متغیرها، ثابت ها و انواع داده ها Variables, Constants and Data Types

  • الحاق و درون یابی Concatenation and Interpolation

  • اشیا و آرایه ها Objects and Arrays

  • عملگرهای رابطه ای و برابری Relational and Equality operators

  • عملگرهای منطقی Logical operators

  • بیانیه مشروط Conditional statement

  • حلقه ها Loops

  • کارکرد Functions

  • کلاس و روش ها Class and methods

نصب و پیکربندی سرو Cypress installation and configuration

  • برنامه کلون در حال آزمایش Clone application under test

  • نصب سرو Cypress Installation

  • پیکربندی سرو Cypress Configuration

  • سرو 9 در مقابل سرو 10 Cypress 9 vs Cypress 10

تعامل با عناصر وب Interaction with Web Elements

  • اصطلاحات DOM DOM Terminology

  • ساختار تست ها Tests Structure

  • انواع مکان یاب Types of Locators

  • یافتن عناصر وب Finding Web Elements

  • ذخیره موضوع فرمان Saving Subject of the Command

  • فراخوانی فرمان Invoke Command

  • چک باکس ها و دکمه های رادیویی Checkboxes and Radio Buttons

  • تاریخ انتخاب های وب Web Datepickers

  • لیست ها و کشویی ها Lists and Dropdowns

  • جداول وب Web Tables

  • پاپ آپ ها و نکات ابزار PopUps and ToolTips

  • اظهارات سرو Cypress Assertions

  • بررسی دانش Knowledge Check

الگوی طراحی شی صفحه Page Object Design Pattern

  • شیء صفحه اول First Page Object

  • جریان انتها به انتها با اشیاء صفحه End-to-End Flow With Page Objects

  • دستورات سفارشی Custom Commands

کار با API ها Working with APIs

  • API چیست؟ What is API?

  • اشیاء JSON JSON Objects

  • نمای کلی پروژه جدید New Project Overview

  • تأیید تماس های API مرورگر Verification of the Browser API Calls

  • پاسخ تمسخر آمیز API Mocking API Response

  • Cy.Intercept() در جزئیات Cy.Intercept() in details

  • تماس های API با استفاده از Cypress API Calls Using Cypress

  • مجوز بدون سر Headless Authorization

خصوصیات پیشرفته Advanced Features

  • NPM Scripts و Cypress CLI NPM Scripts and Cypress CLI

  • متغیرهای محیطی Environment Variables

  • امتحانات مجدد Test Retries

  • چندین گزارش تست Multiple Test Reports

  • سرو با ظرف داکر Cypress With Docker Container

  • با OKTA وارد شوید Login With OKTA

  • تست متقابل مرورگر Cross Browser Testing

  • سایه DOM Shadow DOM

  • داشبورد سرو و اجرای تست موازی Cypress Dashboard and Parallel test execution

  • داشبورد رایگان برای Cypress FREE Dashboard for Cypress

  • تست بصری Visual Testing

  • از کجا اطلاعات بیشتری پیدا کنیم؟ Where to Find More Information?

کلمات پایانی Final Words

  • کلمات پایانی Final Words

نمایش نظرات

آموزش Cypress: تست اتوماسیون وب از صفر تا قهرمان
جزییات دوره
10.5 hours
55
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
24,767
4.7 از 5
ندارد
دارد
دارد
Artem Bondar
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Artem Bondar Artem Bondar

مهندس اتوماسیون تست