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

پاسخ دادن

همیشه با همان بازنویسی پاسخ دهید.

استفاده
mock.respond(overwrites, { header, statusCode, fetchResponse })
پارامترها
نامنوعجزئیات
overwritesMockOverwriteمحتوای جایگزین برای پاسخ
params
اختیاری
MockResponseParamsپارامترهای پاسخ اضافی برای بازنویسی
params.header
اختیاری
Objectبازنویسی هدرهای خاص
params.statusCode
اختیاری
Numberبازنویسی کد وضعیت پاسخ
params.fetchResponse
اختیاری
Booleanدریافت پاسخ واقعی قبل از پاسخ دادن با داده‌های مجازی
مثال
respond.js
it('should demonstrate response overwrite with static data', async () => {
const mock = await browser.mock('https://todo-backend-express-knex.herokuapp.com/', {
method: 'get'
})

mock.respond([{
title: 'Injected (non) completed Todo',
order: null,
completed: false
}, {
title: 'Injected completed Todo',
order: null,
completed: true
}], {
statusCode: 200,
fetchResponse: true // default
})

await browser.url('https://todobackend.com/client/index.html?https://todo-backend-express-knex.herokuapp.com/')

await $('#todo-list li').waitForExist()
console.log(await $$('#todo-list li').map(el => el.getText()))
// outputs: "[ 'Injected (non) completed Todo', 'Injected completed Todo' ]"
})

it('should demonstrate response overwrite with dynamic data', async () => {
const mock = await browser.mock('https://todo-backend-express-knex.herokuapp.com/')

mock.respond((request) => {
if (request.body.username === 'test') {
return { ...request.body, foo: 'bar' }
}
return request.body
}, {
statusCode: () => 200,
headers: () => ({ foo: 'bar }),
fetchResponse: false // do not fetch real response
})
})

Welcome! How can I help?

WebdriverIO AI Copilot