我正在尝试使用电子 浏览器在赛普拉斯上运行测试,但是系统语言会根据浏览器的语言进行更改。这使测试失败。
我尝试覆盖下面的代码中的visit
方法,但是没有用。
/ commands.js
Cypress.Commands.overwrite("visit", (originalVisit, url, options = {}) => {
console.log('calling cy.visit')
const opts = {
onBeforeLoad: (win) => {
Object.defineProperty(win.navigator, 'language', {
value: 'pt-BR'
})
},
onLoad: (win) => {
console.log('onLoad')
}
}
return originalVisit(url, opts)
})
我的问题是:有什么方法可以将浏览器配置为始终以特定语言启动?
答案 0 :(得分:0)
尝试修改您的浏览器启动首选项。对于您的特定情况,这段代码可能会有用:
on('before:browser:launch', (browser, launchOptions) => {
if (browser.family === 'chromium') {
launchOptions.preferences.default.intl = { accept_languages: 'pt-BR' };
return launchOptions;
}
});