当前位置: 首页 > 知识库问答 >
问题:

用Jest只运行一个测试

梅飞宇
2023-03-14

我想用Jest做一个测试。

我使用它。仅描述。仅,但它仍然运行大量测试。我认为它运行了自上次提交以来的所有测试,但它不应该在显式设置了only标志的情况下运行这种行为,对吗?

是什么导致了这种行为?如何运行单个测试?


共有3个答案

王云
2023-03-14

对我来说,如果我使用以下两个参数,它会起作用:

yarn test --watch -f "src/...fullpath.../reducer.spec.js" -t "Name of the test"

旗帜:

--watch: is optional

-f: will do filtering of your files, so if you have a lot of tests with the same name, specify the full path to the exact file

-t: works with 'describe' name or 'it' name of your test
刘弘新
2023-03-14
匿名用户

it.onlydescribe.only仅适用于它们所在的模块。如果在多个文件中筛选测试时遇到问题,可以使用jest-t name-of-spec,筛选与指定名称匹配的测试(与描述或测试中的名称匹配)。

来源:笑话CLI选项

例如,我关注我目前正在编写的测试(使用package.json中的测试脚本):
npm测试---t“test foo”

景承教
2023-03-14

Jest将测试运行并行化,它不知道应该运行哪些测试,不应该运行哪些测试。这意味着当您使用“适合”时,它只会在该文件中运行一个测试。但是它仍然运行项目中的所有其他测试文件。

fitfdescribe它。只有描述。只有具有相同的目的:跳过其他测试,只运行我自己。

资料来源:https://github.com/facebook/jest/issues/698#issuecomment-177673281

使用Jest过滤机制。当你像这样运行测试时,

jest --config=jest.config.json --watch

您可以通过testnamefilename过滤测试。只需按照终端中的说明操作即可。

p,然后键入文件名。

然后您可以使用description.onlyit.only,这将跳过筛选的测试文件中的所有其他测试。

 类似资料:
  • 我正在通过运行Jest测试。默认情况下,Jest并行运行测试。有没有办法让测试按顺序运行? 我有一些测试调用依赖于更改当前工作目录的第三方代码。

  • Jest在Docs中表示:“Jest虚拟化JavaScript环境,并在工作进程之间并行运行测试。” 但是对于一个文件中的多个测试呢,它们是并行运行的,还是这个语句只适用于测试文件呢?我可以假设一个文件中的测试按外观顺序和串行运行吗?

  • 我是新手。我使用Gradle1.10和Ubuntu13。 我想知道是否有任何命令只执行一个单元测试类,类似于SBT中的。

  • 问题内容: 标题几乎可以解释我所面临的问题。我正在尝试测试具有某种状态的组件,并且试图为该组件提供存储以获取所需的组件。当我使用Jest运行组件的测试时,出现以下错误: 我已经通过了一些读数确定,这是造成或者没有被正确适用于玩笑。但是,我尝试安装这两个软件包并重新运行,但结果没有变化。阅读Jest Github问题页面(删除babel- polyfill的自动包含#2755 )后,我发现Jest从

  • 这个标题很大程度上解释了我面临的问题。我试图测试一个具有某种状态的组件,并试图将我的存储提供给该组件以获取它需要的内容。当我使用Jest运行组件的测试时,我得到以下错误: 通过一些阅读,我确定这是由或未正确应用于Jest造成的。但是,我已经尝试安装这两个软件包并重新运行,结果没有变化。在阅读Jest Github问题页面(删除babel polyfill#2755的自动包含)后,我发现自版本19起

  • {//tsconfig.base.json“compileOnSave”:false,“compilerOptions”:{“baseUrl”:“/”,“outDir”:“/dist/out tsc”,“sourceMap”:true,“declaration”:false,“downlevelIteration”:true,“experimentalDecorators”:true,“modul