لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش Cucumber BDD با Python Behave و Selenium WebDriver 2023
Cucumber BDD with Python Behave and Selenium WebDriver 2023
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
ساخت چارچوب اتوماسیون با Cucumber BDD با استفاده از Python و Behave برای Selenium WebDriver و API Testing و SQL شما قادر خواهید بود چارچوب تست Cucumber BDD را با استفاده از Python، Behave، Selenium WebDriver، .... بنویسید و بخوانید Cucumber BDD. تستهای سبک در پایتون شما میتوانید بر روی Cucumber BDD Framework کار کنید که از Frontend با BDD Selenium و Backend با BDD Python خالص پشتیبانی میکند، میتوانید سایت تجارت الکترونیک کامل را در رایانه خود ایجاد کنید و تست اتوماسیون BONUS: SQL Crash Course (MySQL) را تمرین کنید. شما یاد می گیرید که چگونه با پایگاه داده MySQL کار کنید نکات و ترفندهای یافتن عناصر، مشکلات اشکال زدایی، میانبرها با IDE، متدولوژی های تست، راه اندازی فایل py را خواهید آموخت. درک پایتون پایه (پایتون 3 یا 2 خوب است) آشنایی با اصول تست خودکار دسترسی به نصب کتابخانه ها در رایانه ای که می خواهید استفاده کنید
شرح دوره
با نحوه عملکرد چارچوبهای آزمایش Cucumber BDD (توسعه مبتنی بر رفتار/توسعه مبتنی بر آزمایش) آشنا شوید. بیاموزید که چگونه تکههای خیار کنار هم قرار میگیرند و چارچوبها چگونه کنار هم قرار میگیرند، و همچنین بهترین روشهای BDD. ما از محبوب ترین و فعال ترین فریم ورک Cucumber برای Python BDD به نام "Behave" استفاده خواهیم کرد. ما از ارائه پاورپوینت برای انتقال مفاهیم در مورد هر موضوع استفاده می کنیم و سپس نمونه هایی از سناریوهای واقعی تست کد را با Selenium WebDriver و همچنین تست API می نویسیم.
ما یک سایت تجارت الکترونیکی را بر روی ماشین محلی خود میسازیم و نوشتن موارد آزمایشی واقعی را هم برای Front End با Selenium WebDriver و هم برای Backend با Python با دسترسی کامل به پایگاه داده MySQL سایت خود تمرین میکنیم.
افزودنی مهم به رزومه شما
اگر در حال ورود به دنیای QA هستید یا به دنبال پیشرفت هستید
حرفه شما، داشتن مهارت تست BDD موفقیت شما را تسریع می کند.
پایتون یکی از محبوب ترین زبان ها برای استفاده در تست نرم افزار است.
و دانستن نحوه استفاده از آن با تست سبک BDD استخر شما را گسترش می دهد
از احتمالات.
علاوه بر استفاده از پایتون برای تست BDD، نکات و راهنماییهایی در مورد بهترین شیوهها نیز دریافت خواهید کرد.
پس از اتمام این دوره، میتوانید به گونهای مصاحبه کنید که گویی تجربه تست BDD را دارید. شما همچنین یک چارچوب آماده برای شروع خواهید داشت که می توانید به افزودن موارد آزمایشی برای تمرین و نمونه کارها ادامه دهید.
محتوا و نمای کلی
در این دوره ما از ارائه پاورپوینت برای توضیح مفاهیم استفاده خواهیم کرد و سپس برای هر موضوع به کدنویسی در یک IDE (PyCharm) خواهیم پرداخت. برخی از موضوعات، مستقیماً به سراغ کدنویسی می رویم و شروع به نوشتن و اجرا می کنیم.
ما بسته های لازم را برای چارچوب خود نصب خواهیم کرد. ما ساختار دایرکتوری مورد نیاز برای طراحی خود را مورد بحث قرار می دهیم و سپس موارد تست را می نویسیم و اجرا می کنیم.
ما نحوه نگارش تستهای BDD، نحوه کار با هم و نحوه درک و کنترل خروجی را اجرا خواهیم کرد.
ما یک چارچوب آزمایشی با ساختار کارآمد ایجاد میکنیم و یاد میگیریم که چگونه از ماژول ثبت پایتون برای تولید گزارشهای قابل خواندن استفاده کنیم.
قرار است از این دوره چه چیزی به دست بیاورم؟
49+ سخنرانی مفاهیم اصلی BDD، مثالها و تمرینهای تمرینی (اضافه کردن مداوم مثالهای بیشتر)
تستهای زیادی برای استفاده در نمونه کارها و ساخت لباسهای آزمایشی بزرگتر در بالای مطالب دوره
مواد و مثالهای کافی برای ایجاد یک پروژه (چارچوب تست BDD) و نگهداری مخزن GitHub
ویژگی های خاص محبوب ترین چارچوب BDD برای پایتون به نام Behave
استفاده از توابع Selenium WebDriver را با Python تمرین کنید
آزمایش Front-end با Selenium WebDriver BDD و Python را تمرین کنید
تست کردن Back-end را با پایتون تمرین کنید
سرفصل ها و درس ها
معرفی
Introduction
مقدمه ای بر دوره
Introduction To The Course
درباره کد دوره ارائه شده
About The Provided Course Code
فهرست مطالب - شرح بخشها/سخنرانیهای دوره
Content List - Description of sections/lectures of the course
مقدمه ای بر BDD، Gherkin و Behave
Introduction to BDD, Gherkin and Behave
مقدمه ای بر BDD، Gherkin و Behave
Introduction to BDD, Gherkin and Behave
معرفی
Introduction
مقدمه ای بر دوره
Introduction To The Course
درباره کد دوره ارائه شده
About The Provided Course Code
فهرست مطالب - شرح بخشها/سخنرانیهای دوره
Content List - Description of sections/lectures of the course
تاسیسات
Installations
نصب پایتون - مک
Installing Python - Mac
نصب پایتون - مک
Installing Python - Mac
نصب پایتون - ویندوز
Installing Python - Windows
نصب پایتون - ویندوز
Installing Python - Windows
درباره محیط مجازی
About Virtual Environment
ایجاد محیط مجازی در مک (دمو)
Creating virtual environment on Mac (demo)
ایجاد محیط مجازی در ویندوز (دمو)
Creating virtual environment on Windows (demo)
ایجاد محیط مجازی در ویندوز (دمو)
Creating virtual environment on Windows (demo)
نصب Pycharm/IDE
Installing Pycharm / IDE
نصب Pycharm/IDE
Installing Pycharm / IDE
محیط مجازی را به PyCharm اضافه کنید
Add Virtual Environment to PyCharm
محیط مجازی را به PyCharm اضافه کنید
Add Virtual Environment to PyCharm
افزونه Gherkin را به PyCharm اضافه کنید
Add Gherkin Plugin to PyCharm
نصب Behave و Selenium
Installing Behave and Selenium
نصب Behave و Selenium
Installing Behave and Selenium
تاسیسات
Installations
درباره محیط مجازی
About Virtual Environment
ایجاد محیط مجازی در مک (دمو)
Creating virtual environment on Mac (demo)
افزونه Gherkin را به PyCharm اضافه کنید
Add Gherkin Plugin to PyCharm
اجزای BDD و مثال های اساسی
BDD Components and Basic Examples
ساختار یا طرح پوشه (بحث)
Folder structure or layout (Discussion)
ساختار یا طرح پوشه (بحث)
Folder structure or layout (Discussion)
ساختار یا چیدمان پوشه (دمو/مثال)
Folder structure or layout (Demo/Example)
فایل ویژگی
Feature File
فایل ویژگی
Feature File
فایل تعریف مرحله
Step definition File
فایل تعریف مرحله
Step definition File
در حال اجرا 1 فایل (بحث)
Running 1 file (discussion)
در حال اجرا 1 فایل (دمو)
Running 1 file (demo)
در حال اجرا 1 فایل (دمو)
Running 1 file (demo)
اجرای همه فایل ها (بحث)
Running all files (discussion)
اجرای همه فایل ها (بحث)
Running all files (discussion)
اجرای تمامی فایل ها (دمو)
Running all files (demo)
توقف اجرای "--stop" در اولین شکست
"--stop" Stop Execution at First Failure
"--dry-run" بدون دویدن اجرا کنید
"--dry-run" Run without Running
سایر ویژگی های Behave Core
Other Behave Core features
فراخوانی مراحل در تعاریف مراحل دیگر
Calling Steps in Other Step definitions
عبور تعریف رشته به مرحله
Passing String to Step Definition
توقف اجرای "--stop" در اولین شکست
"--stop" Stop Execution at First Failure
"--dry-run" بدون دویدن اجرا کنید
"--dry-run" Run without Running
اسکریپت دونده
Runner Script
اسکریپت Runner Python برای اجرای تست ها
Runner Python Script to Run Tests
اسکریپت Runner Python - ادامه دارد (Parameterize)
Runner Python script - continued (Parameterize)
اسکریپت Runner Python - ادامه دارد (Unique Test ID)
Runner Python script - continued (Unique Test Id)
اسکریپت Runner Python - ادامه (دایرکتوری خروجی)
Runner Python script - continued (Output directory)
اسکریپت Runner Python - ادامه (دایرکتوری خروجی)
Runner Python script - continued (Output directory)
اسکریپت Runner Python - ادامه دارد (WebDrivers)
Runner Python script - continued (WebDrivers)
اسکریپت دونده
Runner Script
اسکریپت Runner Python برای اجرای تست ها
Runner Python Script to Run Tests
اسکریپت Runner Python - ادامه دارد (Parameterize)
Runner Python script - continued (Parameterize)
اسکریپت Runner Python - ادامه دارد (Unique Test ID)
Runner Python script - continued (Unique Test Id)
اسکریپت Runner Python - ادامه دارد (WebDrivers)
Runner Python script - continued (WebDrivers)
بخش تمرین اتوماسیون BDD
BDD Automation Practice Section
توجه داشته باشید
NOTE
توجه داشته باشید
NOTE
بخش مقدمه ای بر تمرین
Introduction to Practice Section
*TCID-10-1 (FE) کاربر معتبر باید بتواند وارد سیستم شود (تنظیم چارچوب)
*TCID-10-1 (FE) Valid user should be able to login (Framework Setup)
*TCID-10-1 (FE) کاربر معتبر باید بتواند وارد سیستم شود (تنظیم چارچوب)
*TCID-10-1 (FE) Valid user should be able to login (Framework Setup)
*TCID-10 - 2 (ادامه) کاربر معتبر باید بتواند وارد سیستم شود
*TCID-10 - 2 (Continued) Valid user should be able to login
*TCID-10 - 3 (FE) (ادامه) کاربر معتبر باید بتواند وارد سیستم شود
*TCID-10 - 3 (FE) (Continued) Valid user should be able to login
*TCID-10 - 3 (FE) (ادامه) کاربر معتبر باید بتواند وارد سیستم شود
*TCID-10 - 3 (FE) (Continued) Valid user should be able to login
*TCID-10 - 4 (FE) (ادامه) کاربر معتبر باید بتواند وارد سیستم شود
*TCID-10 - 4 (FE) (Continued) Valid user should be able to login
*TCID-10 - 4 (FE) (ادامه) کاربر معتبر باید بتواند وارد سیستم شود
*TCID-10 - 4 (FE) (Continued) Valid user should be able to login
خانه داری - همان فایل ها پروژه جدید در PyCharm
Housekeeping - Same Files New Project in PyCharm
TCID-11 (FE) کاربر با رمز عبور اشتباه باید پیام خطای صحیح را دریافت کند
TCID-11 (FE) User with wrong password should get correct error message
TCID-11 (FE) کاربر با رمز عبور اشتباه باید پیام خطای صحیح را دریافت کند
TCID-11 (FE) User with wrong password should get correct error message
TCID-12 (FE) کاربر با ایمیلی که وجود ندارد باید پیام خطای صحیح را دریافت کند
TCID-12 (FE) User with none-existing email should get correct error message
TCID-12 (FE) کاربر با ایمیلی که وجود ندارد باید پیام خطای صحیح را دریافت کند
TCID-12 (FE) User with none-existing email should get correct error message
* Backend Helper - روش http GET
*Backend Helper - http GET method
*Backend Helper - روش http POST
*Backend Helper - http POST method
*Backend Helper - روش http POST
*Backend Helper - http POST method
*TCID-24-1 (BE) تأیید کنید «GET/products» همه محصولات را برمی گرداند
*TCID-24-1 (BE) Verify 'GET /products' returns all products
*TCID-24-1 (BE) تأیید کنید «GET/products» همه محصولات را برمی گرداند
*TCID-24-1 (BE) Verify 'GET /products' returns all products
*TCID-24-2 (BE) تأیید کنید «GET/products» همه محصولات را برمی گرداند
*TCID-24-2 (BE) Verify 'GET /products' returns all products
راه حل تکلیف: تمام صفحات محصولات را دریافت کنید
Assignment Solution: Get all pages of products
*TCID-25 (BE) بررسی کنید که "products/id" محصولی را با شناسه داده شده برمی گرداند
*TCID-25 (BE) Verify 'products/id' returns a product with the given id
*TCID-25 (BE) بررسی کنید که "products/id" محصولی را با شناسه داده شده برمی گرداند
*TCID-25 (BE) Verify 'products/id' returns a product with the given id
*TCID-29-1 (BE) بررسی کنید که "POST/customers" کاربر را ایجاد می کند
*TCID-29-1 (BE) Verify 'POST /customers' creates user
*TCID-29-2 (BE) بررسی کنید که "POST/customers" کاربر را ایجاد می کند
*TCID-29-2 (BE) Verify 'POST /customers' creates user
*TCID-29-2 (BE) بررسی کنید که "POST/customers" کاربر را ایجاد می کند
*TCID-29-2 (BE) Verify 'POST /customers' creates user
*TCID-29-3 (BE) بررسی کنید که "POST/customers" کاربر را ایجاد می کند
*TCID-29-3 (BE) Verify 'POST /customers' creates user
TCID-33-1 (FE) سفارش کاربر جدید با 1 مورد بدون ایجاد حساب
TCID-33-1 (FE) New user place order with 1 item without creating account
TCID-33-1 (FE) سفارش کاربر جدید با 1 مورد بدون ایجاد حساب
TCID-33-1 (FE) New user place order with 1 item without creating account
TCID-33-2 (FE) @Given ("من 1 مورد به سبد خرید اضافه می کنم")
TCID-33-2 (FE) @Given("I add 1 item to cart")
TCID-33-2 (FE) @Given ("من 1 مورد به سبد خرید اضافه می کنم")
TCID-33-2 (FE) @Given("I add 1 item to cart")
TCID-33-3 (FE) @Given ("من روی سبد خرید در نوار ناوبری کلیک می کنم")
TCID-33-3 (FE) @Given("I click on cart in nav bar")
TCID-33-4 (FE) @When ("من گزینه "ارسال رایگان" را انتخاب می کنم")
TCID-33-4 (FE) @When("I select 'Free Shipping' option")
TCID-33-4 (FE) @When ("من گزینه "ارسال رایگان" را انتخاب می کنم")
TCID-33-4 (FE) @When("I select 'Free Shipping' option")
TCID-33-5 (FE) @When ("من روی دکمه "ادامه به پرداخت" کلیک می کنم")
TCID-33-5 (FE) @When("I click on 'Proceed to checkout' button")
TCID-33-5 (FE) @When ("من روی دکمه "ادامه به پرداخت" کلیک می کنم")
TCID-33-5 (FE) @When("I click on 'Proceed to checkout' button")
TCID-33-6 (FE) @When ("من تأیید می کنم صفحه "پرداخت" بارگیری شده است")
TCID-33-6 (FE) @When("I verify 'Checkout' page is loaded")
TCID-33-6 (FE) @When ("من تأیید می کنم صفحه "پرداخت" بارگیری شده است")
TCID-33-6 (FE) @When("I verify 'Checkout' page is loaded")
TCID-33-7 (FE) @When ("من فرم جزئیات صورتحساب را پر می کنم")
TCID-33-7 (FE) @When("I fill in the billing details form")
TCID-33-8 (FE) @When ("من روی دکمه "سفارش" کلیک می کنم")
TCID-33-8 (FE) @When("I click on 'Place order' button")
TCID-33-9 (FE) @Then("صفحه "سفارش دریافت شد" باید بارگیری شود")
TCID-33-9 (FE) @Then("the 'Order received' page should load")
خطای TCID-33-9-1 (FE) در مرحله 9؟
TCID-33-9-1 (FE) Error in step 9?
TCID-33-9-2 (FE) راه حل خطا در مرحله 9
TCID-33-9-2 (FE) Solution to Error in step 9
TCID-33-10 (FE) @Then ("من تأیید می کنم سفارش در پایگاه داده ایجاد شده است")
TCID-33-10 (FE) @Then("I verify order is created in database")
انتظار ضمنی سلنیوم
Selenium Implicit Wait
انتظار ضمنی سلنیوم
Selenium Implicit Wait
* نحوه اجرای WebDriver در مرورگر هدلس (کروم بدون هد)
* How to run WebDriver in headless browser (headless Chrome)
TCID-36 تا 40 - 1 (BE) @Given('من یک کوپن "<discount_type>" ایجاد می کنم')
TCID-36 to 40 - 1 (BE) @Given('I create a "<discount_type>" coupon')
TCID-36 تا 40 - 1 (BE) @Given('من یک کوپن "<discount_type>" ایجاد می کنم')
TCID-36 to 40 - 1 (BE) @Given('I create a "<discount_type>" coupon')
TCID-36 تا 40 - 2 (BE) @Then('کوپن باید در پایگاه داده وجود داشته باشد')
TCID-36 to 40 - 2 (BE) @Then(' the coupon should exist in database')
TCID-43 (BE) بررسی کنید که فراداده کوپن به درستی ثبت شده است
TCID-43 (BE) Verify coupon metadata recorded correctly
TCID-44-1 (FE) کوپن 50% تخفیف سبد خرید باید 50% از سبد خرید را تخفیف دهد
TCID-44-1 (FE) 50% off cart coupon should discount 50% of the cart
TCID-44-1 (FE) کوپن 50% تخفیف سبد خرید باید 50% از سبد خرید را تخفیف دهد
TCID-44-1 (FE) 50% off cart coupon should discount 50% of the cart
TCID-44-2 (FE) موارد را به سبد خرید اضافه کنید و مجموع را دریافت کنید
TCID-44-2 (FE) Add items to cart and get total
TCID-44-2 (FE) موارد را به سبد خرید اضافه کنید و مجموع را دریافت کنید
TCID-44-2 (FE) Add items to cart and get total
TCID-44-3 (FE) @when ("من یک کوپن معتبر 50٪ تخفیف دریافت می کنم")
TCID-44-3 (FE) @when(‘I get a valid 50% off coupon’)
TCID-44-3 (FE) @when ("من یک کوپن معتبر 50٪ تخفیف دریافت می کنم")
TCID-44-3 (FE) @when(‘I get a valid 50% off coupon’)
TCID-44-4 (FE) @when(«من کوپن را روی سبد خرید اعمال می کنم»)
TCID-44-4 (FE) @when(‘I apply the coupon to the cart’)
TCID-44-4 (FE) @when(«من کوپن را روی سبد خرید اعمال می کنم»)
TCID-44-4 (FE) @when(‘I apply the coupon to the cart’)
TCID-44-5 (FE) @then ("کل باید 50٪ کاهش یابد")
TCID-44-5 (FE) @then(‘the total should be reduced by 50%’)
TCID-44-5 (FE) @then ("کل باید 50٪ کاهش یابد")
TCID-44-5 (FE) @then(‘the total should be reduced by 50%’)
بخش تمرین اتوماسیون BDD
BDD Automation Practice Section
بخش مقدمه ای بر تمرین
Introduction to Practice Section
*TCID-10 - 2 (ادامه) کاربر معتبر باید بتواند وارد سیستم شود
*TCID-10 - 2 (Continued) Valid user should be able to login
خانه داری - همان فایل ها پروژه جدید در PyCharm
Housekeeping - Same Files New Project in PyCharm
* Backend Helper - روش http GET
*Backend Helper - http GET method
SQL SELECT Query ادامه دارد
SQL SELECT Query Continued
SQL SELECT Query ادامه دارد
SQL SELECT Query Continued
SQL SELECT Query ادامه دارد 2
SQL SELECT Query Continued 2
SQL SELECT Query ادامه دارد 2
SQL SELECT Query Continued 2
بند SQL IN
SQL IN Clause
بند SQL IN
SQL IN Clause
پرس و جو فرعی SQL SELECT
SQL SELECT Sub-Query
بند SQL LIKE
SQL LIKE Clause
مقدمه ای برای SQL JOIN
Intro to SQL JOIN
مقدمه ای برای SQL JOIN
Intro to SQL JOIN
SQL JOIN
SQL JOIN
SQL JOIN
SQL JOIN
SQL LEFT JOIN
SQL LEFT JOIN
توابع ویژه SQL
SQL Special Functions
SQL INSERT INTO
SQL INSERT INTO
SQL INSERT INTO
SQL INSERT INTO
SQL CREATE TABLE
SQL CREATE TABLE
SQL DROP و TRUNCATE
SQL DROP and TRUNCATE
نتیجه گیری دوره خرابی SQL
SQL Crash Course Conclusion
بخش ویژه: SQL (MySQL) Crash Course
SPECIAL SECTION: SQL (MySQL) Crash Course
مقدمه ای بر SQL Crash Course
Introduction to the SQL Crash Course
پرس و جو فرعی SQL SELECT
SQL SELECT Sub-Query
بند SQL LIKE
SQL LIKE Clause
SQL LEFT JOIN
SQL LEFT JOIN
توابع ویژه SQL
SQL Special Functions
SQL CREATE TABLE
SQL CREATE TABLE
SQL DROP و TRUNCATE
SQL DROP and TRUNCATE
نتیجه گیری دوره خرابی SQL
SQL Crash Course Conclusion
بخش ویژه: برای تمرین تست، سایت تجارت الکترونیکی را در ماشین محلی ایجاد کنید
SPECIAL SECTION: Create E-Commerce Site on Local Machine To Practice Testing
معرفی "ایجاد سایت تجارت الکترونیک به صورت محلی"
Intro to "Creating E-Commerce Site Locally"
معرفی "ایجاد سایت تجارت الکترونیک به صورت محلی"
Intro to "Creating E-Commerce Site Locally"
گزینه هایی برای اجرای وردپرس
Options to Run Wordpress
گزینه هایی برای اجرای وردپرس
Options to Run Wordpress
اجرای وردپرس با MAMP
Running WordPress with MAMP
اجرای وردپرس با MAMP
Running WordPress with MAMP
«محلی» را نصب کنید
Install 'Local'
ایجاد سایت
Creating the site
ایجاد سایت
Creating the site
تم را نصب کنید
Install theme
نصب افزونه (ووکامرس)
Install plugin (WooCommerce)
نصب افزونه (ووکامرس)
Install plugin (WooCommerce)
افزودن نمونه محصولات
Adding sample products
راه اندازی صفحه اصلی و ثبت نام
Setup Home Page and Registration
از "کوپن" برای پرداخت استفاده کنید
Use 'Coupons' to checkout
از "کوپن" برای پرداخت استفاده کنید
Use 'Coupons' to checkout
تسویه حساب با "پول نقد در تحویل"
Checkout with "Cash on Delivery"
تسویه حساب با "پول نقد در تحویل"
Checkout with "Cash on Delivery"
راه اندازی و تست WooCommerce Rest API
Setup and Test WooCommerce Rest API
راه اندازی و تست WooCommerce Rest API
Setup and Test WooCommerce Rest API
اتصال به پایگاه داده
Connecting to Database
اتصال به پایگاه داده
Connecting to Database
نتیجه گیری بخش
Conclusion of Section
بخش ویژه: برای تمرین تست، سایت تجارت الکترونیکی را در ماشین محلی ایجاد کنید
SPECIAL SECTION: Create E-Commerce Site on Local Machine To Practice Testing
«محلی» را نصب کنید
Install 'Local'
تم را نصب کنید
Install theme
افزودن نمونه محصولات
Adding sample products
راه اندازی صفحه اصلی و ثبت نام
Setup Home Page and Registration
نمایش نظرات