Typescript 如何在TestCafe中全局处理错误

Typescript 如何在TestCafe中全局处理错误,typescript,testing,error-handling,try-catch,testcafe,Typescript,Testing,Error Handling,Try Catch,Testcafe,我已经用typescript为我的TestCafe项目建立了一个页面对象模型。我发现在每种方法中,try/catch的重复性都是多余的。我总是想让温斯顿把错误记录下来 是否有一种全局处理错误的建议方法?下面是一个示例页面: import { Selector, t } from "testcafe"; import logger from 'logger'; export default class DocumentQueryPage { path: string; query

我已经用typescript为我的TestCafe项目建立了一个页面对象模型。我发现在每种方法中,try/catch的重复性都是多余的。我总是想让温斯顿把错误记录下来

是否有一种全局处理错误的建议方法?下面是一个示例页面:

import { Selector, t } from "testcafe";
import logger from 'logger';

export default class DocumentQueryPage {
    path: string;
    queryDocumentsButton: Selector;

    constructor() {
        this.path = "#/records/query";

        this.queryDocumentsButton = Selector('button.btn-request-records');
    }

    async go(): Promise<void> {
        try {
            await t.navigateTo(this.path)
        }
        catch (err) {
            logger.error(err)
        }
    }

    async selectFirstQuery(): Promise<void> {
        try {
            await t.navigateTo(this.path)
        }
        catch (err) {
            logger.error(err)
        }
    }
}
从“testcafe”导入{Selector,t};
从“记录器”导入记录器;
导出默认类DocumentQueryPage{
路径:字符串;
queryDocumentsButton:选择器;
构造函数(){
this.path=“#/records/query”;
this.queryDocumentsButton=选择器('button.btn请求记录');
}
异步go():承诺{
试一试{
等待t.navigateTo(此路径)
}
捕捉(错误){
记录器错误(err)
}
}
异步selectFirstQuery():承诺{
试一试{
等待t.navigateTo(此路径)
}
捕捉(错误){
记录器错误(err)
}
}
}

我建议不要将try/catch块与testcafe内置操作一起使用。您可以实现自己的reporter,也可以修改现有的reporter。请参阅以下文章:   了解现有记者的工作方式也很有用。请查看默认testcafe reporter如何显示错误:   您可以通过将自己的错误处理逻辑添加到
reportTestDone
方法来修改现有的reporter