首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TestCafe -如何在testcaferc文件中拥有多个testGrep正则表达式

问TestCafe -如何在testcaferc文件中拥有多个testGrep正则表达式
EN

Stack Overflow用户
提问于 2021-12-01 15:23:52
回答 1查看 62关注 0票数 0

我正在试着过滤掉一些我们一直跳过的测试。"test.skip“是跳过测试的默认方式,但是TestCafe在跳过测试后遇到了运行冻结的问题。

同时,他们有一个过滤选项用于他们的testcaferc文件,我想用它来基本上忽略测试。由于忽略的测试不会在使用filter选项的报告中显示,我希望这意味着忽略测试后TestCafe不会冻结。

他们的文档说明了如何使用过滤器仅运行指定的测试,但缺少其负面方面:

https://testcafe.io/documentation/402638/reference/configuration-file#filter

我已经能够很好地过滤出单个测试,但是我们现在有多个测试需要忽略,当我尝试添加一个新的正则表达式时,运行停止并说“没有与您的过滤器匹配的测试”。

我正在寻找一种方法来拥有多个正则表达式,以便TestCafe知道忽略多个测试。

以下是有效的方法:

代码语言:javascript
复制
"filter": {
        "testGrep":
            "^((?!user_is_able_to_add_a_section_column_row_and_element_to_editor).)*$"
}

下面是不起作用的地方:

代码语言:javascript
复制
"filter": {
        "testGrep": [
            "^((?!user_is_able_to_add_a_section_column_row_and_element_to_editor).)*$",
            "^((?!pop_up_element_displays_during_page_preview).)*$"
        ]
    }
EN

回答 1

Stack Overflow用户

发布于 2021-12-03 09:56:50

testGrep配置选项仅支持单个正则表达式。您可以指定一个带有alternation的正则表达式来忽略多个测试:

代码语言:javascript
复制
"filter": {
    "testGrep": "^(?!.*(Test One|Test Two)).*$"
}

另一种方法是使用JS配置文件而不是JSON。它允许您指定一种方法,在该方法中,您可以以任何您想要的方式过滤测试:

代码语言:javascript
复制
module.exports = {
    src: './tests/test.js',
    filter: (testName => !testName.includes('Test One') && !testName.includes('Test Two'))
}

此方法类似于Runner.filter方法。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70186825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档