Day 5 vitest 之 vitest配置前言补充和修改

以前直接看配置选项,现在学聪明了~~~先概再细

有关于vitest的配置选项下次再发啦~~~~

每日语录:摆烂是自我保护机制,有效的努力,有效的摆烂,拒绝无效努力,更拒绝无效摆烂

使用vite作为构建工具

vitest支持与vite相同的配置文件扩展名,但不支持.json扩展

  • .js

  • .mjs

  • .cjs

  • .ts

  • .cts

  • 首先

    • vitest将读取您的根vite.config.ts,以与插件匹配并设置为您的vite应用程序(vitest的优势之一)
      • 举例:

        • 您的vite resolve.alias和插件配置开箱即用

      • 配置要求

        • 需要在vite配置中添加test属性

          • 如果你要从vite本身导入defineConfig,您还需要在配置文件顶部使用三斜杠指令添加对vitest类型的引用

            //使用vite中的dinfineConfig你应该遵循一下步骤:
            
            /// <reference types="vitest" />
            import { defineConfig } from 'vite'
            
            export default defineConfig({
              test: {
                // ... Specify options here.
              },
            })
      • 扩展

        • vitest还支持您在测试期间的不同的配置,以下方法均可:

          • 创建vitest.config.ts, 比vite.config.ts具有更高的优先级

          • 将 - config选项传递给cli ,例如vitest --config ./path/to/vitest.config.ts

          • 使用definConfig上的process.env.VITEST 或者 mode属性 (如果未覆盖则设置为test)有条件的应用vite.config.ts

不使用vite作为构建工具

  • 可以使用配置文件的test属性来配置vitest
//使用 vitest/config 中的 defineConfig 您应该遵循以下步骤:
import {defineConfig} from "vitest/config"
export  default defineConfig({
  test:{
  }
})
  • 如果需要:您可以检索 Vitest 的默认选项来扩展它们
import { configDefaults, defineConfig } from 'vitest/config'

export default defineConfig({
  test: {
    exclude: [...configDefaults.exclude, 'packages/template/*'],
  },
})

需要注意:即使不使用vite,vitest的转换管道严重依赖vite,因此您还可以配置vite文档中描述的任何属性

建议

1.如果你想要为vite和vitest使用两个单独的配置文件

  • 确保在vitest配置文件中定义相同的vite选项,因为他将覆盖您的vite文件,而不是扩展你的vite配置

2.如果你想要将vite配置与vitest配置合并

  • 使用vite或者vitest/config条目中的merge方法将vite配置与vitest配置合并
    • 当你的vite配置不以函数形式导出的时候
      • import {defineConfig,mergeConfig} from "vitest/config"
        import viteConfig from "./vite.config.mjs"
        
        export default mergeConfig(viteConfig,defineConfig({
          test:{
             exclude: ['packages/template/*'],
          }
        }))
    • 当你的vite配置以函数形式导出的时候
      • import { defineConfig, mergeConfig } from 'vitest/config'
        import viteConfig from './vite.config'
        
        export default defineConfig(configEnv => mergeConfig(
          viteConfig(configEnv),
          defineConfig({
            test: {
              exclude: ['packages/template/*'],
            },
          })
        ))
        
        注意:mergeConfig 助手自 v0.30.0 起在 Vitest 中可用。如果您使用较低版本,可以直接从 vite 导入。

3.官方建议vite和vitest使用相同的文件,而不是创建两个单独的文件

  • 28
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值