我的afterEach块中包含此代码,该代码可用于控制台记录失败规范的页面源。但我想将其移至另一堂课。
afterEach(function () {
const state = this.currentTest.state;
if (state === 'failed') {
browser.driver.getPageSource().then(function (res) {
console.log(res);
});
}
});
但是当我尝试在另一个类中使用以下内容时,类型'HelperClass'上不存在'Property'currentTest'。如何声明currentTest属性?
import { browser, } from 'protractor';
export class HelperClass {
public getSource() {
const state = this.currentTest.state;
if (state === 'failed') {
browser.driver.getPageSource().then(function (res) {
console.log(res);
});
}
}
}
答案 0 :(得分:0)
尝试如下
测试文件:
const helper = new HelperClass(); // create object for class
afterEach(async ()=> {
const state = this.currentTest.state;
await helper.getSource(state);
});
课程文件
import { browser, } from 'protractor';
export class HelperClass {
public getSource(state:any) {
if (state === 'failed') {
browser.driver.getPageSource().then(function (res) {
console.log(res);
});
}
}
}
在这里,我们正在从您的测试文件发送State
。
希望对您有帮助