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

ساس لبز

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

{
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