如何解决如何从wdio配置文件中的afterTest挂钩中访问测试运行的文件名?
我正在尝试从wdio配置文件中的afterTest
钩子访问每个运行测试的文件名。但是,提供给该挂钩的参数均不包含文件名。我尝试过从onWorkerStart
挂钩中获取文件名,因为提供给该挂钩的specs
参数包括文件名,所以像这样:
onWorkerStart(cid,caps,specs) {
const fileName = specs[0];
}
但是我不确定如何访问在fileName
钩子中的onWorkerStart
钩子中创建的afterTest
变量。我尝试将其用作全局变量:
onWorkerStart(cid,specs) {
global.fileName = specs[0];
}
aftertest() {
console.log(global.fileName);
}
但是这只是打印“未定义”。而且,如果我也从onWorkerStart
钩子打印它,实际上它确实会首先从那里打印文件名,然后从afterTest
钩子打印“未定义”。
解决方法
我终于明白了。我没有意识到wdio配置中的全局变量必须在before
钩子内进行,幸运的是,before
钩子包含包含文件名的参数specs
。因此,要访问所有其他挂钩中的文件名,需要做的就是在global.specFileName = specs[0]
挂钩内定义before
。现在specFileName
可以在afterTest
挂钩中使用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。