پرش به محتوای اصلی

ساس لبز

تمام دستورات فقط در مرورگر کروم با استفاده از قابلیت‌های اشکال‌زدایی گسترده ساس لبز پشتیبانی می‌شوند. شما می‌توانید این قابلیت‌ها را با تنظیم گزینه‌های ساس به صورت زیر فعال کنید:

{
browserName: 'Chrome',
browserVersion: 'latest',
platformName: 'Windows 10',
'sauce:options': {
extendedDebugging: true
}
}

getPageLogs

دریافت اطلاعات گزارش مخصوص صفحه وب بر اساس آخرین بارگذاری صفحه.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.getPageLogs(type)
پارامترها
نامنوعجزئیات
typestringنوع گزارش (مانند 'sauce:network'، 'sauce:performance')
مثال‌ها
// Get Network Logs
console.log(browser.getPageLogs('sauce:network'));
/**
* outputs:
* [{
* "url": "https://app.saucelabs.com/dashboard",
* "statusCode": 200,
* "method": "GET",
* "requestHeaders": {
* ...
* },
* "responseHeaders": {
* ...
* },
* "timing": {
* ...
* }
* }, {,
* ...
* }]
*/
// Get Performance Logs (needs capturePerformance capability see: https://docs.saucelabs.com/performance/transitions/#setting-performance-capabilities
console.log(browser.getPageLogs('sauce:performance'));
/**
* outputs:
* {
* "speedIndex": 1472.023,
* "timeToFirstInteractive": 1243.214,
* "firstMeaningfulPaint": 892.643,
* ...
* }
*/
مقادیر برگشتی
  • <object> log: خروجی گزارش نوع مورد نظر (نمونه را ببینید)

sauceThrottleNetwork

با شرایط شبکه می‌توانید سایت خود را در انواع مختلف اتصالات شبکه، از جمله Edge، 3G و حتی آفلاین آزمایش کنید. می‌توانید توان داده را محدود کنید، از جمله حداکثر توان دانلود و آپلود، و از دستکاری تاخیر برای اعمال حداقل تاخیر در زمان رفت و برگشت اتصال (RTT) استفاده کنید.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.sauceThrottleNetwork(condition)
پارامترها
نامنوعجزئیات
conditionstring, objectشرایط شبکه برای تنظیم (مانند 'online'، 'offline'، 'GPRS'، 'Regular 2G'، 'Good 2G'، 'Regular 3G'، 'Good 3G'، 'Regular 4G'، 'DSL'، 'Wifi')
مثال‌ها
// predefined network condition
browser.sauceThrottleNetwork('offline')
// custom network condition
browser.sauceThrottleNetwork({
download: 1000,
upload: 500,
latency: 40'
})

throttleCPU

می‌توانید CPU را در DevTools محدود کنید تا نحوه عملکرد صفحه خود را تحت آن محدودیت درک کنید.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.throttleCPU(rate)
پارامترها
نامنوعجزئیات
ratenumberنرخی که بر اساس آن CPU باید محدود شود.
مثال‌ها
// throttle CPU and make it run 4x slower
browser.throttleCPU(4)
// reset CPU throttling
browser.throttleCPU(0)

interceptRequest

اجازه می‌دهد هر درخواستی که توسط مرورگر انجام می‌شود را تغییر دهید. می‌توانید این درخواست‌ها را در لیست سیاه قرار دهید، تغییر دهید یا تغییر مسیر دهید، همانطور که برای آزمایش‌های خود نیاز دارید.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.interceptRequest(rule)
پارامترها
نامنوعجزئیات
ruleobjectقانونی که رهگیری درخواست را توصیف می‌کند.
مثال‌ها
// redirect a request
browser.interceptRequest({
url: 'https://saucelabs.com',
redirect: 'https://google.com'
})
// Blacklist requests to 3rd party vendors
browser.interceptRequest({
url: 'https://api.segment.io/v1/p',
error: 'Failed'
})
// Modify requests to REST API (Mock REST API response)
browser.interceptRequest({
url: 'http://sampleapp.appspot.com/api/todos',
response: {
headers: {
'x-custom-headers': 'foobar'
},
body: [{
title: 'My custom todo',
order: 1,
completed: false,
url: 'http://todo-backend-express.herokuapp.com/15727'
}]
}
})

assertPerformance

سنجش برابر خط مبنای عملکرد برنامه شما.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.assertPerformance(name, metrics)
پارامترها
نامنوعجزئیات
namestringنام کاری که با آن خط مبنای خود را ایجاد کرده‌اید.
metrics
اختیاری
string[]نام معیارهایی که می‌خواهید در برابر خط مبنا بسنجید.
مثال
// test performance for a page
browser.url('https://webdriver.io')
const hasRegression = browser.assertPerformance({
name: 'my performance test', // make sure that the name is also set in the sauce options in your capabilities
metrics: ['score', 'firstPaint']
})
مقادیر برگشتی
  • <object> hasRegression: یک شی که شامل نتیجه و همچنین معیارهای مربوط به نتیجه است.

jankinessCheck

یک تست اسکرول انجام دهید که میزان لگ‌زدگی برنامه را ارزیابی می‌کند.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.jankinessCheck()
مثال
// test performance for a page
browser.url('https://webdriver.io')
browser.jankinessCheck()
مقادیر برگشتی
  • <object> testResults: یک شی که شامل امتیاز و همچنین معیارهای مربوط به میزان روان بودن تجربه کاربری صفحه در طول آزمایش است.

mockRequest

یک منبع شبکه را شبیه‌سازی می‌کند.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.mockRequest(url, filterOptions)
پارامترها
نامنوعجزئیات
urlstringالگوی URL برای تطبیق با آدرس شبیه‌سازی شده.
filterOptions
اختیاری
objectگزینه‌های فیلتر اضافی برای آدرس شبیه‌سازی شده (مانند headers، method).
مقادیر برگشتی
  • <object> mockId: یک شی که شامل شناسه منبع شبیه‌سازی شده است.

getMockCalls

دریافت اطلاعات درخواست‌های مطابق با منبع شبیه‌سازی شده.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.getMockCalls(mockId)
پارامترها
نامنوعجزئیات
mockIdStringشناسه یک شبیه‌سازی
مقادیر برگشتی
  • <object> requests: لیستی از اطلاعات درخواست‌ها.

clearMockCalls

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

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.clearMockCalls(mockId, restore)
پارامترها
نامنوعجزئیات
mockIdStringشناسه یک شبیه‌سازی
restore
اختیاری
booleanروی true تنظیم کنید اگر شبیه‌سازی نیز باید بازیابی شود.

respondMock

اگر شبیه‌سازی با منبع خاصی مطابقت داشته باشد، پاسخ می‌دهد.

دستور ساس لبز. جزئیات بیشتر را می‌توانید در مستندات رسمی پروتکل بیابید.

استفاده
browser.respondMock(mockId, payload)
پارامترها
نامنوعجزئیات
mockIdStringشناسه یک شبیه‌سازی
payload
اختیاری
objectاطلاعات مربوط به پاسخ شبیه‌سازی شده.

Welcome! How can I help?

WebdriverIO AI Copilot