紫外线圈覆盖
一个为 CircleCI 智能测试生成覆盖数据的Vitest插件.
使用量
此插件使用 v8 JS 引擎配置器 API 来收集覆盖.
安装插件 .
pnpm add -D @circleci/vitest-circleci-coverage
将自定义的运行器和记录器添加到您的 vitest.config.ts数字 :
import { defineConfig } from 'vitest/config';
export default defineConfig({
test: {
runner: '@circleci/vitest-circleci-coverage/runner',
reporters: ['@circleci/vitest-circleci-coverage/reporter'],
},
});
设定 CIRCLECI_COVERAGE 运行测试时的环境变量,以允许测试覆盖.
CIRCLECI_COVERAGE=coverage.json vitest run
浏览器模式
浏览器模式 收集 Chrome 上的覆盖 DevTools协议。 需要一个铬浏览器.
import { defineConfig } from 'vitest/config';
import { playwright } from '@vitest/browser-playwright';
export default defineConfig({
test: {
setupFiles: ['@circleci/vitest-circleci-coverage/browser'],
reporters: ['@circleci/vitest-circleci-coverage/reporter'],
browser: {
enabled: true,
provider: playwright(),
instances: [{ browser: 'chromium' }],
},
},
});
发展
安装并使用当前节点版本 .
NODE_VER=$(cat ./.nvmrc)
nvm install $NODE_VER
nvm use $NODE_VER
用 pnpm 安装依赖性 .
pnpm install
构建插件 .
pnpm build
运行测试.
pnpm test