Pular para o conteúdo principal

respond

Sempre responde com a mesma sobrescrita.

Uso
mock.respond(overwrites, { header, statusCode, fetchResponse })
Parâmetros
NomeTipoDetalhes
overwritesMockOverwritepayload para sobrescrever a resposta
params
opcional
MockResponseParamsparâmetros adicionais de resposta para sobrescrever
params.header
opcional
Objectsobrescrever cabeçalhos específicos
params.statusCode
opcional
Numbersobrescrever código de status da resposta
params.fetchResponse
opcional
Booleanbuscar resposta real antes de responder com dados simulados
Exemplo
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