在赛普拉斯测试运行器中找不到文件

No files found in cypress test runner

这件奇怪的事情发生在我突然收到“在赛普拉斯测试运行器中找不到文件”错误消息的地方。

但是文件在文件夹中,我已将其移至新文件夹并尝试 运行 但我仍然收到错误消息。关于为什么会发生这种情况,请提出任何想法或想法?

我也尝试过 运行 无头模式,但我收到了相同的错误消息。

谢谢。 @Nanker Phelge 请就如何解决此问题提出任何想法。谢谢

你可以像这样执行测试 -

npx cypress run --spec=cypress/integration/GTProjects/*

或者,您可以将所有测试作为数组添加到 cypress.json 文件中的 testFiles 下,在这种情况下,您可以直接使用 npx cypress run.

"testFiles": [
  "GTProjects/GTProject1.js",
  "GTProjects/GTProject2.js",
  "GTProjects/GTProject3.js",
  "GTProjects/GTProject4.js",
  "GTProjects/GTProject5.js",
  "GTProjects/GTProject6.js",
  "GTProjects/GTProject7.js",
  "GTProjects/GTProject8.js",
  "GTProjects/GTProject9.js"
]

或者,您可以在 cypress.json 中提供 integrationFolder 路径,在这种情况下,您也可以使用 npx cypress run

执行测试
"integrationFolder": "cypress/integration/GTProjects"

默认情况下,如果您没有进行任何不同的配置,Cypress 会查找集成文件夹的所有子文件夹。

请参阅Configuration

文件夹/文件

Option Default
testFiles **/*.*

其中 ** 是 glob 模式的一部分,表示 'look in all the sub folders - for all file types'.

如果您配置了其他内容,可能是它的原因,但如果没有条目,则 cypress.json 不是原因。

否则,如果您有 *.spec.js*/*.js,这些将排除您的文件(因为没有 .spec.js 扩展名和单个 * 将排除子文件夹。

说到排除,如果存在 ignoreTestFiles 配置条目(在 cypress.json 中),这可能会导致问题。


我还想指出 PageObjects 文件夹可能会被视为测试并导致更多错误。

一个常见的模式是用 .spec.js 扩展名命名所有具有测试的文件,例如 GTProject1.spec.js.

cypress.json文件中,设置

testFiles: "**/*.spec.js"

这意味着在 /cypress/integration 文件夹和 任何子文件夹 中查找扩展名为 [=16= 的文件].它会忽略只有 .js 扩展名的 PageObject 文件。

然后您可以稍后重新排列文件夹,仍然可以看到所有测试。