تسلط به WireMock برای تست مؤثر API
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- در پایان دوره، دانشجویان در استفاده از WireMock و JUnit برای ایجاد تستهای قدرتمند و باکیفیت مهارت پیدا میکنند.
- تطبیق درخواستهای ورودی بر اساس URL، هدرها، محتوای بادی و موارد دیگر
- تطبیق پیشرفته: استفاده از JSONPath و XPath و عبارات منظم برای تطبیق پیچیده درخواستها
- پاسخهای ایستا: تعریف پاسخهای مشخص برای درخواستهای خاص و قالبهای پاسخ پویا: تولید پاسخهای پویا با استفاده از قالبهای Handlebars
- مچرهای سفارشی، ترنسفرمرها و Extension API: گسترش قابلیتهای WireMock با افزونههای سفارشی
- سناریوهای رفتار Stateful: تعریف و مدیریت تعاملات stateful برای شبیهسازی گردشکارهای پیچیده
پیشنیازهای دوره
- برنامهنویسی پایه Java: آشنایی با سینتکس Java، مفاهیم برنامهنویسی شیگرا و ساختارهای اولیه داده
- محیط توسعه یکپارچه (IDE): آشنایی با استفاده از IDEs مانند Eclipse یا IntelliJ IDEA
- دانش پایه از ابزارهای ساخت مانند Maven یا Gradle برای مدیریت وابستگیها
- درک پایه از تست و مفاهیم تست واحد
- درک پایه از فرمت JSON و XML
توضیحات دوره
قدرت تست API را با دوره جامع ما، «تسلط به WireMock برای تست مؤثر API»، کشف کنید. این دوره به گونهای طراحی شده که شما را از مبانی تا تکنیکهای پیشرفته همراهی کند و مطمئن شود که میتوانید از WireMock با حداکثر توانایی آن استفاده کنید.
WireMock یک ابزار متنباز محبوب برای تست ماک API است. این ابزار به ایجاد محیطهای تست و توسعه پایدار، جداسازی از اشخاص ثالث غیرقابل اعتماد و شبیهسازی APIs ناموجود کمک میکند.
WireMock از ایجاد mock APIs به صورت کد، از طریق REST API خودش، با فایلهای JSON و همچنین با ضبط ترافیک HTTP پشتیبانی میکند. این ابزار یک سیستم تطبیق قدرتمند دارد و میتواند با استفاده از قالبهای مبتنی بر Handlebars، پاسخهای پیچیده را به صورت پویا تولید کند. به دلیل نقاط توسعه متعدد و APIs جامع، یکپارچهسازی با آن بسیار آسان است. WireMock در چندین زبان برنامهنویسی و پشته فناوری مختلف قابل استفاده است. این ابزار میتواند در بسیاری از زبانها به صورت یک کتابخانه یا wrapper کلاینت اجرا شود، یا به عنوان یک سرور مستقل مورد استفاده قرار گیرد.
ماژولهای دوره:
- مقدمهای بر WireMock: با WireMock، کاربردهای آن و نحوه راهاندازی آن آشنا میشوید.
- Stubbing پایه و تطبیق درخواست: یاد میگیرید چگونه stubs ساده ایجاد کنید و درخواستها را بر اساس URL و متد و هدر و بادی تطبیق دهید.
- تطبیق درخواست پیشرفته: به تطبیق اسکیماهای JSON، پارامترهای فرم و مچرهای XPath/JSONPath میپردازید.
- قالبهای پاسخ: قالبهای پاسخ پایه و پیشرفته را با توابع و helpers به خوبی یاد میگیرید.
- رفتار stateful و سناریوها: تعریف سناریوها، stateful stubs و مدیریت state سراسری را بررسی میکنید.
- افزونهها و سفارشیسازی: مچرها و ترنسفرمرهای سفارشی میسازید و از Extension API استفاده میکنید.
- یکپارچهسازی با ابزارهای دیگر: WireMock را با JUnit، سایر فریمورکهای تست و پایپلاینهای CI/CD یکپارچه میکنید.
- ماک کردن پروتکلهای مختلف: پروتکلهای HTTP/HTTPS را ماک میکنید.
- WireMock Cloud: یک بررسی از WireMock Cloud دریافت کرده و یاد می گیرید چگونه آن را راهاندازی و استفاده کنید.
این دوره برای چه کسانی مناسب است؟
- توسعهدهندگان API: توسعهدهندگانی که RESTful APIs را ایجاد و نگهداری میکنند و برای تست اندپوینتهای خود، بدون وابستگی به سرویسهای خارجی، به ابزار تست نیاز دارند.
- مهندسان اتوماسیون تست: متخصصانی که تست اپلیکیشنهایی را خودکار میکنند که با APIs خارجی تعامل دارند و باید سناریوهای مختلف را شبیهسازی کنند.
- متخصصان تست یکپارچهسازی: تستکنندگانی که بر تست یکپارچهسازی تمرکز دارند و برای اعتبارسنجی تعاملات بین کامپوننتهای مختلف سیستم، نیاز به ماک کردن سرویسهای خارجی دارند.
تسلط به WireMock برای تست مؤثر API
-
مقدمه دوره 02:45
-
WireMock چیست؟ 02:40
-
نحوه عملکرد داخلی WireMock 02:17
-
ابزارهای مورد نیاز 00:57
-
پیکربندی JDK 05:07
-
پیکربندی Apache Maven 03:06
-
راهاندازی IntelliJ IDE 01:47
-
راهاندازی PostMan 01:27
-
راهاندازی پروژه (maven و Java) 06:18
-
راهاندازی Burno 01:26
-
ضرورت JUnit برای WireMock 01:11
-
بررسی JUnit 03:27
-
کار عملی JUnit 10:45
-
Assertions در JUnit 04:10
-
بررسی افزونههای JUnit 01:17
-
کار عملی با افزونههای JUnit 06:17
-
JUnit - آزمون اصول اولیه None
-
کار عملی با Fluent HttpClient 04:43
-
بررسی سرور مستقل 03:47
-
بررسی سرور تعبیه شده 11:30
-
تبدیل متدهای HTTP به عملیاتهای CRUD 03:39
-
درک فرمت درخواست و پاسخ HTTP 02:31
-
آزمون مبانی HTTP None
-
مسیر یادگیری 01:16
-
طراحی کتابخانه 02:04
-
ساختار پروژه کتابخانه 03:46
-
طراحی لایه ارتباطات 03:24
-
پیادهسازی لایه ارتباطات 05:22
-
اپلیکیشن تحت تست 05:54
-
ساختار کلاس تست 06:13
-
درک Stubs 03:01
-
پیکربندی پاسخ با کد وضعیت 11:09
-
پیکربندی پاسخ با هدر 04:54
-
پیکربندی پاسخ با بادی 09:06
-
توسعه Stub برای پاسخ در فرمت JSON None
-
توسعه Stub برای پاسخ در فرمت XML None
-
اعتبارسنجی محتوای پاسخ 07:12
-
درک درخواست Post 04:48
-
تطبیق درخواست با بادی 13:42
-
مچر StringValuePattern و MultiValuePattern 05:22
-
تطبیق درخواست با هدر 07:04
-
ایجاد مچرهای سفارشی 11:12
-
تطبیق بادی با مچر مسیر JSON 10:44
-
تطبیق بادی با JSON Unit Placeholders 06:18
-
تطبیق بادی با XML Unit Placeholders None
-
تطبیق بادی با مچر اسکیمای JSON 06:25
-
تطبیق درخواست با URL 08:52
-
تطبیق درخواست با URL از طریق عبارت منظم None
-
طراحی لایه اعتبارسنجی 02:51
-
پیادهسازی آبجکت انتقال داده 05:00
-
ساخت کلاسهای استثنای مخصوص اعتبارسنجی 04:22
-
پیادهسازی Validator پاسخ 08:47
-
تطبیق بادی با مچر XPath 12:22
-
Stub برای لایه اعتبارسنجی - استثنای مدیریت نشده (پاسخ 500) None
-
شروع کار با Multipart Form Data 05:58
-
ابزار آپلود فایل 05:23
-
تطبیق درخواست با بادی multipart-form-data 12:43
-
قابلیت آپلود فایل 06:29
-
Stub برای multipart/form-data - تایپ داده XML None
-
درک پارامترهای کوئری و پارامترهای مسیر در URLs 05:49
-
تطبیق درخواست با پارامترهای کوئری 09:05
-
تطبیق درخواست با پارامترهای مسیر 05:58
-
پیادهسازی GET APIs با کوئری و پارامترهای مسیر 04:01
-
طراحی لایه تبدیل داده 02:32
-
ایجاد مدلهای داده Java از JSON و XML 03:30
-
کلاسهای Builder برای مدل داده 07:33
-
مبانی فریمورک Jackson 03:26
-
پیادهسازی لایه تبدیل داده 06:23
-
Stub برای لایه تبدیل داده - JSON 09:21
-
Stub برای لایه تبدیل داده - XML None
-
Stub برای لیست آبجکتهای JSON 08:03
-
Stub برای لیست آبجکتهای XML 06:46
-
مقدمهای بر قالبهای پاسخ 02:34
-
راهنمای سریع عبارات Handlebars 06:33
-
فعالسازی قالبهای پاسخ در WireMock 03:55
-
تجزیه درخواستها با Handlebars در WireMock 08:18
-
قالبهای JSON در WireMock - بررسی JSON Path Helper 08:13
-
قالبهای XPath در WireMock - بررسی XPath Helper 04:47
-
ابزارهای Handlebars در قالبهای WireMock 06:29
-
راهنمای ترنسفورمر سفارشی پاسخ در WireMock 04:10
-
ترنسفرمر سفارشی برای Multipart Form Data 10:51
-
مقدمهای بر شبیهسازی خطا 02:32
-
WireMock API برای شبیهسازی خطاها 02:19
-
شبیهسازی خطاها با تأخیرهای ثابت 09:50
-
شبیهسازی خطاها با تأخیرهای تصادفی 04:01
-
شبیهسازی خطاها با استفاده از Chunked Dribble Delay 04:01
-
طراحی لایه تعامل 02:37
-
پیادهسازی لایه تعامل 08:04
-
Builder برای لایه تعامل 05:37
-
یکپارچهسازی کتابخانه برای فراخوانی سرویس 04:14
-
یکپارچهسازی کتابخانه برای فراخوانی سرویس و دریافت همه آبجکتها از سرور None
-
درک رفتار Stateful 04:13
-
مقدمهای بر درخواست PATCH 04:24
-
ایجاد Stub برای درخواست PATCH 11:03
-
رفتار Stateful برای جریان چنددرخواستی 15:12
-
اعتبارسنجی درخواستها 06:49
-
اعتبارسنجی درخواست PATCH None
-
پایداری در WireMock 03:13
-
چگونه Stubs را در WireMock ماندگار کنیم؟ 06:11
-
ذخیره Mappings API 05:49
-
ساخت Loader اختصاصی WireMock - از طریق JsonSave Mappings API 05:29
-
ساخت Loader اختصاصی WireMock - بررسی JsonFileMappingsSource 06:04
-
درک درخواست Delete 04:09
-
ایجاد Stub برای درخواست Delete با احراز هویت اولیه 13:59
-
افزونههای WireMock - مقدمه 02:27
-
افزونه Faker 05:17
-
افزونه MappingsLoader 08:18
-
افزونه JUnit برای WireMock 08:17
مشخصات آموزش
تسلط به WireMock برای تست مؤثر API
- تاریخ به روز رسانی: 1405/04/02
- سطح دوره:Alls
- تعداد درس:108
- مدت زمان :09:25:18
- حجم :7.6GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy