学习 NightWatch - 初步认识

NightWatch (守夜人)

是一个e2e(end to end 端到端)的 JS 集成框架

用 TS 编写 NightWatch 测试文件

配置

// nightwatch.conf.js
module.exports = {
  src_folders: ['测试源文件夹'], 
  page_objects_path: ['测试源文件夹/页面对象文件夹'],
  //...
  //Optionally change the browser for the test from firefox to chrome
  test_settings: {
    //...
    default: {
      desiredCapabilities: {
        browserName : 'chrome'
      },
    }
  }
}

测试失败时截屏

{
    // ...
    "test_settings": {
        "default": {
            "screenshots": {
                "enabled": true,
                "on_failure": true,
                "path": "./screens"
            }
        }
    }
    // ...
}

运行

nightwatch
// integration 是在 全局配置文件中的 test_settings 属性中定义的字段
// 是一个配置
nightwatch --env integration

实例

// ...
export default {
    // browser 是浏览器对象
    'demo test': browser => {
        browser
            // 捕获浏览器控制台日志
            .captureBrowserConsoleLogs((event) => {
                // type 输出类型:log、debug、info、error...
                // timestamp 记录控制台消息的时间
                // args value对象属性含日志
                console.log(event.type, event.timestamp, event.args[0].value);
            })
    }
}
// ...

学习 NightWatch - 初步认识
http://localhost:8080/archives/bbd782d2-8a5c-478e-ae7e-f73cac1d82f4
作者
inksha
发布于
2024年09月14日
许可协议