首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jest testMatch模式匹配器的改进

问Jest testMatch模式匹配器的改进
EN

Stack Overflow用户
提问于 2022-01-05 12:10:28
回答 1查看 176关注 0票数 0

我使用Jest并使用这个“testMatch”模式来匹配jest.config.js中的测试文件:

testMatch: ['**/?(*.)+(spec).[j|t]s?(x)']

但是,它错误地选择了一些以spec.js结尾的文件。我希望它只匹配.spec.js,但是任何我尝试的结果都没有找到任何文件。

这个正则表达式似乎可以实现我想要的/.*\.spec\.[j|t]sx?/,但我认为这些模式匹配器的工作方式略有不同。

我需要更改什么才能使它只拾取[something].spec.js文件(或jsx/ts/tsx)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-27 04:15:47

正如您注意到的,这些模式实际上并不是regex。如果你在寻找一个关键字来开始你的搜索,它们是一种“全球模式”的形式。另外,我可能弄错了,但我很肯定,您想要的是[jt]或(j|t),而不是[j|t],可能并不重要。

话虽如此,听起来似乎您更喜欢regex语法而不是glob语法。我不能说我怪你!与其试图找出产生与所追求的正则表达式相同的行为的glob,不如改用--testRegex选项(这也是jest.config.js文件的属性名称)。

看看这里:https://jestjs.io/docs/configuration#testregex-string--arraystring作为一个奖励,出于没有意义的原因,testMatch只能接受一个模式数组,但是testRegex可以是一个字符串(如果您只有一个模式要匹配)或一个数组。

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

https://stackoverflow.com/questions/70592653

复制
相关文章

相似问题

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