在实时模式下重新运行 TestCafe 测试时重新初始化全局配置

re-initialize global configuration when rerunning TestCafe test in live mode

在实时模式下使用 TestCafe 时(不使用实时 运行ner),当它 运行 检测到代码更改时,它不会重新加载我的全局变量。

在我的测试代码中,我有一个配置页面,我用它来设置测试的初始状态,在测试期间我修改了这个配置,以便我可以跟踪和检查预期的更改。

例如,我有以下内容:

ConfigPage = {
  description: 'some description'
}

在我的测试代码中,一路上我想做一些类似

的事情
ConfigPage.description = ConfigPage.description+' add to description'

这话,不过直播不重运行。如果实时重新 运行 被触发,在测试开始时 ConfigPage.description 现在有 'some description add to description' 而不是 'some description'

我的 ConfigPage 文件是 TypeScript class:

class ConfigurationPage {
  description: string
  constructor () {
    this.description = 'some description'
  }
}

export ConfigPage = new ConfigurationPage()

如果未修改,您的 ConfigPage 文件是在测试重新运行 时从缓存中导入的。因此 ConfigurationPage 对象只被实例化一次并作为常量导出。如果您更改此文件,测试将重新运行 得到您期望的结果。