我正在使用Stencil.js创建一个Web组件库,我严重依赖E2E测试。由于它们相当慢,因此在开发新组件的同时运行整个测试套件(使用 Stencil.js CLI(变得越来越麻烦。
但是,我无法在我的IDE(IntelliJ IDEA(中或通过命令行运行单个测试。不过,它对于单元测试非常有效。
我的开玩笑配置看起来像这样:
module.exports = {
"roots": [
"<rootDir>/src"
],
"preset": "@stencil/core/testing"
}
当我尝试在单个文件中运行测试时(jest --config jest.config.js --testPathPattern src/components/button/button.e2e.ts$
(
它失败了,因为
newE2EPage(( 仅在 E2E 测试中可用,并使用 --e2e cmd 行标志运行。
newE2EPage(( 附带 Stencil.js我不知道 Stencil.js 的 CLI 在后台做了什么。此外,我克隆了 Stencil.js 存储库,只是为了看看它是否适用于他们的 E2E 测试 (https://github.com/ionic-team/stencil/tree/master/test/end-to-end(,但它也不起作用。
知道我如何配置 Jest 以便它能够从命令行运行 Stencil.js-E2E 测试吗?
--e2e
标志用于 package.json 中的 npm 脚本。要启动 e2e 测试,您可以在 package.json 中添加以下内容:
"scripts": {
"test:e2e": "stencil test --e2e"
}
并运行npm run test:e2e
.对于特定文件,您可以在末尾添加它,如下所示:
npm run test:e2e src/components/button/button.e2e.ts
有关更多信息,请参阅 StencilJS 文档:https://stenciljs.com/docs/end-to-end-testing
我有同样的问题。IntelliJ和"Run"单曲"it"不起作用。
newE2EPage() is only available from E2E tests, and ran with the --e2e cmd line flag.
当我运行"npm 运行测试"时,一切都会正常工作。 不同之处在于 npm 运行模板之前和只有开玩笑不起作用。
这是模板抖动目录 https://github.com/ionic-team/stencil/tree/master/src/testing/jest 以及配置。
我在这里发现了 https://stenciljs.com/docs/testing-overview VS-CODE 运行开玩笑的代码,但没有 Intellij 设置。
IM 正在运行以获取当前文件的路径以通过 npm 运行模具和 E2E 文件的路径。 但是我找不到运行配置的正确变量。
我希望我们能尽快解决这个问题。
干杯
我不是 VS Code 用户,但与 IntelliJ 相比,VSC 有一个运行单个测试launch.json
:https://github.com/ionic-team/stencil-site/pull/480