Cypress.log
这是用于控制命令日志输出内容的内部 API。
在编写自定义命令时非常有用。
语法
Cypress.log(options)
参数
options (Object)
向 Cypress.log()
传入一个选项对象。
选项 | 默认值 | 描述 |
---|---|---|
$el | undefined | |
name | 命令名称 | |
displayName | 命令名称 | 仅用于显示目的,会覆盖 name 。 |
message | 命令参数 | |
consoleProps | function() {} |
示例
我们希望命令日志和开发者工具控制台能记录自定义命令的特定属性。
Cypress.Commands.add('setSessionStorage', (key, value) => {
// 关闭 cy.window() 在命令日志中的记录
cy.window({ log: false }).then((window) => {
window.sessionStorage.setItem(key, value)
})
const log = Cypress.log({
name: 'setSessionStorage',
// 在命令日志中显示更短的名称
displayName: 'setSS',
message: `${key}, ${value}`,
consoleProps: () => {
// 返回一个对象,点击命令时
// 会在开发者工具控制台中打印
return {
Key: key,
Value: value,
'Session Storage': window.sessionStorage,
}
},
})
})
上述代码在命令日志中的显示效果如下所示,点击命令时会显示控制台属性。
