typescript - Mengapa laporan liputan Vitest melaporkan fail yang hanya mengeksport enum?


Kami beroperasi dengan polisi liputan cawangan 100%. Kami tidak menjejak fungsi atau baris. Kami mendapati itu adalah keseimbangan terbaik antara liputan kod dan produktiviti. Kami kini menghadapi masalah di mana vitest melaporkan fail berikut sebagai mempunyai dua cawangan:

export enum URL {
  preSignedUploadUrl = '/case-document/upload/api?fileType=',
  saveDocumentUploadToMongoUrl = '/case-document/upload/api?caseReference=',
}

Jika saya menambah ujian berikut, cabang-cabang itu akan dilindungi, tetapi seperti yang anda lihat, ia bukan ujian unit dan tidak memberi sebarang tujuan yang bernilai

import {describe} from 'vitest'
import {URL} from '@config/urls'

describe('urls', () => {
  it('has the correct URLs', () => {
    expect(URL.preSignedUploadUrl).toEqual(
      '/case-document/upload/api?fileType=',
    )
    expect(URL.saveDocumentUploadToMongoUrl).toEqual(
      '/case-document/upload/api?caseReference=',
    )
  })
})

Konfigurasi

const config = {
  plugins: [react()],
  test: {
    coverage: {
      provider: 'istanbul',
      reporter: ['cobertura', 'json', 'html', 'text-summary'],
      reportsDirectory: './coverage',
      branches: 100,
      all: true,
      include: ['**/*.ts', '**/*.tsx'],
      exclude: ['**/*.spec.ts', '**/*.spec.tsx', '.next/*'],
      src: process.cwd() + '/src',
    },
    setupFiles: './setupTests.js',
    exclude: [...configDefaults.exclude, './.next/'],
    environment: 'happy-dom',
  },
}

export default defineConfig(config)