我想在我的Nuxt.js应用程序中使用Nuxt.js。但是在安装软件包之后,启动测试就会触发这个错误:
“‘vue cli-service”不被识别为内部或外部命令、可操作的程序或批处理文件。
这大概是因为Nuxt.js不使用vue-cli-service。
尽管如此,是否有一种简单的方法将Vue Testing Library与Nuxt.js结合使用?
发布于 2021-03-19 21:10:10
听起来,您可能有一个包含vue-cli-service的NPM脚本(如下面所示),但这是针对Vue CLI支架项目的:
{
"scripts": {
"test:unit": "vue-cli-service test:unit" ❌ not for Nuxt projects
}
}但是,您可以使用下面概述的方法之一来设置Vue测试库。
新项目的安装
在生成新的Nuxt项目时,选择Jest进行测试,并在上面安装Vue测试库:
create-nuxt-app构建一个Nuxt项目的支架,并在Testing framework提示符下选择Jest:
npx创建-nuxt-app nuxt-测试-库-演示
样本输出:
$nuxt app nuxt-测试-库-演示创建-✨v3.5.2✨生成在nuxt-测试-库-演示.?测试框架: Jesttest NPM脚本运行测试(脚手架从步骤1开始):
npm运行试验现有Nuxt项目的设置
对于一个已经存在且没有测试框架的Nuxt项目,可以模仿@nuxt/create-nuxt-app添加Vue测试库支持:
对于Nuxt v2,请安装
@testing-library/vue@5。
test目录,其中包含下面所示的示例测试文件(取自示例)。注意,可以使用https://jestjs.io/docs/configuration#testmatch-arraystring或https://jestjs.io/docs/configuration#testregex-string--arraystring设置在jest.config.js__中配置测试文件的位置。
示例组件:示例测试:
从“@test-库/vue”导入计数器“@/components/Accoun.vue”测试(“单击增量值”),异步c () => {呈现(计数器) expect(screen.queryByText('Times单击:0‘).toBeTruthy() const按钮=screen.getByText(’增量‘)等待fireEvent.click(按钮)等待fireEvent.click(按钮)期待(screen.queryByText(’时间点击:2‘).toBeTruthy() })test NPM脚本运行测试(在步骤2中添加):
npm运行试验https://stackoverflow.com/questions/66637556
复制相似问题