Teste de aplicativos Big JS - evitando vários arquivos karma.conf.js

eu usocarma + jasmim + fantasma para meus testes de JavaScript sem cabeçalho.

O problema que tenho é que eu tenho um aplicativo muito grande que consiste em muitos módulos JS que eu quero testar.Então eu preciso de mocks personalizados para cada caso e inclui personalizado para cada caso.

karma.conf.js permite-me apenas terfiles matriz que consiste em padrões para todos os arquivos para incluir o que é ótimo se meu aplicativo seria pequeno e não um grande aplicativo com muitos arquivos e módulos.

Minha solução por enquanto - crie múltiploskarma.conf.js arquivos para cada caso de teste. Mas isso é uma droga, pois ter muitos arquivos de configuração é um grande inchaço e se eu quiser mudar uma configuração (comoautowatch) Eu precisaria mudar todos os arquivos de configuração.

Minhasoutra solução - escrever manipulador personalizado na frente dekarma.conf.js para lidar com parâmetros adicionais (arquivo de especificação ou pasta para ignorar o karma para procurar em seu arquivo de configuração) e simplesmente construirfiles matriz dinamicamente.

Agora, o problema que vejo com isso é que o carma é executado apenas uma vez e eu ficaria limitado a executar uma especificação de teste ... eEu não quero modificar o próprio KARMA.

Eu também considerei usarGrunhido mas não encontrei uma maneira de fazê-lo funcionar para vários casos de teste.

A propósito, minha estrutura ideal seria assim:

ter arquivos:

test/specs/category/unit1_spec.js
test/mocks/category/unit1_mock.js

arquivo de configuração:

files: [
  {
    'includes': [array_of_includes],
    'spec': 'spec_file'
  }
]

arquivo simulado seria agarrado automaticamente do diretório de mocks apropriado.

e eu poderia fazerkarma start test/specs/category e recursivamente executaria todos os casos de teste dentro da pasta.

tl; dr - Eu quero testar confortavelmente um grande aplicativo.

Eu gostariaqualquer sugestão para lidar com essa tarefa.

questionAnswers(4)

yourAnswerToTheQuestion