مایکروسافت پلیریکت (Microsoft Playwright) یک ابزار اتوماسیون تست است که توسط مایکروسافت توسعه داده شده است. این ابزار به شما کمک میکند تا تستهای مرورگری برای وبسایتها و وباپلیکیشنها ایجاد کنید. Playwright مشابه Selenium است، اما ویژگیها و قابلیتهای بیشتری دارد که آن را برای تستهای مدرن وب مناسبتر میکند. Playwright از چندین مرورگر مختلف (کروم، فایرفاکس، و webkit) پشتیبانی میکند و به شما امکان میدهد تا تستهای خود را بهطور همزمان در چندین مرورگر اجرا کنید.
ویژگیهای اصلی Microsoft Playwright
پشتیبانی از مرورگرهای مختلف:Playwright از مرورگرهای Chromium (که برای کروم و اج استفاده میشود)، Firefox و WebKit (که برای Safari استفاده میشود) پشتیبانی میکند. این امکان را میدهد که تستها را در مرورگرهای مختلف بهصورت همزمان اجرا کنید.
اجرای تستها بهصورت موازی:Playwright به شما این امکان را میدهد که تستها را بهصورت موازی اجرا کنید، این ویژگی باعث افزایش سرعت اجرا و بهرهوری میشود.
پشتیبانی از موبایل:Playwright میتواند تستها را در محیطهای موبایل شبیهسازی کند. شما میتوانید ویژگیهای دستگاههای موبایل مانند سایز صفحه، دوربین و حسگرها را در شبیهسازیها تغییر دهید.
پشتیبانی از جاوا اسکریپت و TypeScript:Playwright از زبانهای جاوا اسکریپت و TypeScript برای نوشتن اسکریپتهای تست پشتیبانی میکند. این امکان را به توسعهدهندگان میدهد که به راحتی از آن در پروژههای خود استفاده کنند.
تستهای UI و End-to-End:Playwright بهطور خاص برای تستهای End-to-End (E2E) و UI طراحی شده است. شما میتوانید تمامی تعاملات کاربر با صفحات وب را شبیهسازی کرده و آنها را تست کنید.
آسانی در شبیهسازی تعاملات پیچیده:Playwright بهراحتی میتواند تعاملات پیچیدهای مانند کشیدن و رها کردن (drag and drop)، کلیک کردن بر روی عناصر داینامیک، ورود به فرمها، و پیمایش بین صفحات مختلف را شبیهسازی کند.
دوربین و ضبط ویدئو:Playwright این امکان را به شما میدهد که ویدیوهایی از فرآیند تست خود ضبط کنید. این ویژگی برای مستندسازی و تجزیه و تحلیل خرابیهای احتمالی بسیار مفید است.
پشتیبانی از سرورهای Proxy:Playwright بهراحتی میتواند به سرورهای Proxy متصل شود و درخواستها را از طریق آنها ارسال کند. این ویژگی برای انجام تستها در شرایط شبکهای خاص یا هنگام شبیهسازی شرایط خاص مفید است.
بهروزرسانی خودکار:Playwright بهطور خودکار با نسخههای جدید مرورگرها بهروزرسانی میشود، بنابراین نیازی به نگرانی در مورد نگهداری و آپدیتهای مرورگرها ندارید.
نحوه نصب Playwright
برای نصب Playwright، میتوانید از npm استفاده کنید:
ابتدا Node.js را نصب کنید.
سپس در پروژه خود Playwright را نصب کنید:
npm install playwright
این دستور نسخهای از Playwright را نصب میکند که شامل تمام مرورگرهای مورد نیاز است. اگر بخواهید فقط یک مرورگر خاص را نصب کنید، میتوانید از دستور زیر استفاده کنید:
در اینجا یک مثال ساده برای نوشتن یک تست با Playwright آورده شده است که در آن یک صفحه وب را باز کرده و بررسی میکند که عنوان صفحه درست است:
const { chromium } = require('playwright'); // برای کروم
// const { firefox } = require('playwright'); // برای فایرفاکس
// const { webkit } = require('playwright'); // برای وبکیت
(async () => {
const browser = await chromium.launch(); // یا firefox.launch() یا webkit.launch()
const page = await browser.newPage();
await page.goto('https://example.com');
const title = await page.title();
console.log(title); // باید "Example Domain" چاپ کند
await browser.close();
})();
در این کد، یک مرورگر کروم باز میشود، یک صفحه وب بارگذاری میشود و سپس عنوان صفحه بررسی میشود.
اجرای تستهای Playwright
برای اجرای تستهای Playwright میتوانید از Node.js استفاده کنید:
node test.js
همچنین Playwright از فریمورکهای تست مانند Jest، Mocha و TestRunner پشتیبانی میکند. به این صورت میتوانید تستهای خود را سازماندهی کنید و آنها را به راحتی اجرا کنید.
ویژگیهای پیشرفته Playwright
شبیهسازی شبکه:Playwright امکان شبیهسازی شرایط مختلف شبکه مانند کندی اتصال یا عدم اتصال به شبکه را فراهم میکند.
شبیهسازی شرایط دستگاه:شما میتوانید ویژگیهای دستگاههای مختلف را شبیهسازی کنید، از جمله ابعاد صفحه، مدل دستگاه، و حتی ویژگیهایی مانند دوربین و حسگرها.
گزارشگیری:Playwright میتواند گزارشهای دقیقی از نتیجه تستها ایجاد کند و اطلاعات مربوط به شکستها، خرابیها و لاگها را بهطور دقیق نشان دهد.
نتیجهگیری
Playwright یک ابزار قدرتمند برای اتوماسیون تست وب است که امکانات زیادی را برای اجرای تستهای دقیق و پیچیده فراهم میکند. این ابزار از مرورگرهای مختلف پشتیبانی میکند و قابلیتهای زیادی برای شبیهسازی تعاملات کاربری و بررسی مشکلات وبسایتها و اپلیکیشنها در اختیار شما میگذارد. Playwright بهویژه برای تیمهای توسعه که نیاز به تستهای End-to-End دارند، ابزار مناسبی است.
برنامه نویس.42ساله. از مدرک MCSD دات نت سال 2002 شروع کردم البته بعد از لیسانس و تمام عمرم رو در مدیریت با ابزار های شیرپوینت و MSPS و CRM و غیره گذراندم.https://zil.ink/sabert