繁体   English   中英

如何配置 playwright-jest 以排除运行的测试套件(规范)文件?

[英]How do I configure playwright-jest to exclude a Test Suite (spec) file for a run?

我有一个带有多个规范文件(测试套件)的playwright-jest设置。 我需要跳过其中一个,但它需要保留在其 repo 的同一目录中(移动它不是一种选择)。

package.json下的默认脚本是"test": "jest -c jest.config.js"我知道我们可以使用npm run test TestSuiteName.spec.ts为单个套件运行它,并且没有文件名 - npm run test ,它运行整个测试计划 - 但是 - 我怎样才能只排除 1 个(或几个)并运行其余的?

我试图为它找到配置标志,但没有运气。 到目前为止有效的是针对该特定文件的describe.skip() ,这主要是我目前能想到的一个不错的解决方法。 但是,我不想在每次运行之前对代码进行更改。

我想看看是否有人有更好的方法来做到这一点? 也许正则表达式? 或者也许通过带有选项标志的jest.config

好的,所以我找到了一个正则表达式解决我的问题。 它似乎仍然不太理想,但在我看来这比添加skip()更好。

显然jest使这变得非常简单,只需在 run 命令中添加一个额外的参数即可。 此参数被视为与文件夹结构中的测试套件文件匹配的正则表达式。

提供模式作为 cli 参数,是一种仅选择与该正则表达式匹配的文件并执行它们的方法 -

jest "my.*(complex)?pattern"

我必须定义一个模式来排除文件名中的字符串。 由于我想排除文件名中带有“BVT”文本的文件,因此将其添加到package.json scripts ,在我的情况下有效 -

"excludeBVT": "jest \\"^((?!BVT).)*$\\" -c jest.config.js"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM