crpcut

Tela Software:
crpcut
Detalhes de Software:
Versão: 1.9.2
Data de upload: 20 Feb 15
Revelador: Bjorn Fahller
Licença: Livre
Popularidade: 5

Rating: nan/5 (Total Votes: 0)

crpcut (pronuncia-se "corte crap") é o Compartmented Robust Posix C ++ Tester Unit. Com crpcut é fácil escrever testes que outros frameworks unidade-teste não pode gerenciar.
exemplo introdutória:
Um exemplo ensaios de peças de std :: string:
& Nbsp; #include
& Nbsp; #include
& Nbsp; struct apastr // dispositivo elétrico para testes mosts
& Nbsp; {
& Nbsp; apastr (): s ("APA") {}
& Nbsp; std :: string s;
& Nbsp;};
& nbsp; testsuite (básico)
& Nbsp; {
& Nbsp; TEST (default_constr_and_destr)
& Nbsp; {
& Nbsp; std :: string s;
& Nbsp; ASSERT_TRUE (s.empty ());
& Nbsp; ASSERT_EQ (s.length (), 0);
& Nbsp;}
& Nbsp; TEST (constr_from_char_array, apastr,
& Nbsp; DEPENDS_ON (default_constr_and_destr))
& Nbsp; {
& Nbsp; ASSERT_EQ (s.length (), 3UL);
& Nbsp;}
& Nbsp; TEST (at, apastr,
& Nbsp; DEPENDS_ON (default_constr_and_destr))
& Nbsp; {
& Nbsp; ASSERT_EQ (s.at (1), 'p');
& Nbsp;}
& Nbsp;}
& nbsp; testsuite (erros, DEPENDS_ON (ALL_TESTS (básico)))
& Nbsp; {
& Nbsp; TEST (at_out_of_range, apastr,
& Nbsp; EXPECT_EXCEPTION (std :: out_of_range))
& Nbsp; {
& Nbsp; s.at (4);
& Nbsp;}
& Nbsp; TEST (index_oper_out_of_range, apastr,
& Nbsp; EXPECT_SIGNAL_DEATH (SIGABRT),
& Nbsp; NO_CORE_FILE)
& Nbsp; {
& Nbsp; s [4];
& Nbsp;}
& Nbsp;}
& Nbsp; int main (int argc, char * argv [])
& Nbsp; {
& Nbsp; retornar crpcut :: :: test_case_factory run_test (argc, argv);
& Nbsp;}
Testes similares benefícios sejam agrupados em test-suites. Test-suites pode depender de outros suites-teste, o que significa que os testes contidos só será executada se todos os testes que ele depende ter concluído com êxito. Os resultados podem ser validado usando uma série de macros Assert. Os testes podem usar acessórios para expressar conteúdos comuns. Os testes podem ser esperado para sair por exceção, ou morrer. As expectativas de que não são atendidas são erros. Mensagens no stderr e stdout são gaught, e incluído no log o resultado.
Por crpcut
Mais importante, deve ser fácil de escrever testes. Com crpcut, você se concentrar em sua estrutura e teste de lógica, e não sobre os limites impostos pelo seu ambiente de teste.
Com crpcut, cada caso de teste é executado em seu próprio processo e seu diretório de trabalho. Se um caso de teste falhar, o processo termina imediatamente, antes que ele faz mais danos. Isto significa que cada caso de teste começa a partir de uma folha em branco, não afetado por outros testes. Esta é a compartimentalização.
Isso também significa que o conjunto de testes continua, mesmo se um teste falha. Você pode estabelecer prazos para casos de teste, e se o tempo permitido é sério descoberto, o processo de caso de teste é morto. Estes dois formam a parte robustez.
Você pode definir as dependências entre os casos de teste e entre conjuntos de testes, de modo que, se um testes fundamentais falhar, os testes que são baseados na funcionalidade fundamental não vai mesmo ser executado.
O processo principal crpcut não tem qualquer memória dinâmica atribuídos no momento de um processo caso de teste é iniciado, para que você possa executar crpcut usando uma ferramenta de teste de memória, como valgrind, e se não houver memória alocada quando o processo de caso de teste termina, você pode ter certeza que você encontrou um vazamento de memória em seu teste.
Se você tiver uma CPU multi-core, pode ser benéfico para executar vários casos de teste em paralelo. crpcut permite que.
Se houver arquivos deixados no processo de teste "diretório de trabalho após o processo de caso de teste foi encerrado, o caso de teste é considerado fracassado. O diretório de trabalho é deixado intocado por crpcut, para você examinar

O que é novo nesta versão:.

  • Esta versão suporta distribuições com versões antigas do CMake.

O que é novo na versão 1.9.1:

  • libcrpcut_basic.so foi construído, mas não instalado

O que é novo na versão 1.8.4:

  • Esta é uma versão de correções menores corrigir problemas de instrumentação valgrind , dependências de teste e com defeito atributo duração do teste em relatórios XML.

O que é novo na versão 1.8.2:

  • Este aprimoramento característica menor faz com que o parâmetro de linha de comando - -timeout multiplicador = factor agora também tem efeito sobre os tempos de espera para a construção de fixação e destruição.

O que é novo na versão 1.8.1:

  • Este aprimoramento característica menor faz com que o parâmetro de linha de comando - -timeout multiplicador = factor agora também tem efeito sobre os tempos de espera para a construção de fixação e destruição.

O que é novo na versão 1.7.2:

  • Esta versão corrige um bug menor com o teste NO_CORE_FILE modificador, que ocorreu em Linux quando / proc / sys / kernel / core_pattern descrito canalizando o dump de memória para um programa em vez de salvar em um arquivo.

O que é novo na versão 1.6.1:

  • Este é um patch para um bug que, em alguns casos causada XML-output mal formado por faltando um fim na lista blocked_tests.

O que é novo na versão 1.6.0:

  • As novidades são um parâmetro adicional opcional para ASSERT_THROW () e VERIFY_THROW () que verifica o valor de um objeto de exceção versão, dois istream base de get_parameter () para pegar os valores passados ​​na linha de comando, e uma opção para construir libcrpcut biblioteca como estática ou compartilhado.

O que é novo na versão 1.5.0:

  • A grande novidade é a marcação de exames. Tags são um método de selecção teste ortogonal ao de TestSuites. As tags também pode ser usado para distinguir entre o teste que são críticos (por exemplo, regressões) e teste que são não-crítica (por exemplo, a funcionalidade atualmente trabalhado.)
  • Suporte experimental também está disponível para a decoração de relatórios de testes com, por exemplo, escapes ANSI-cor.

Programas semelhantes

nose-quickunit
nose-quickunit

20 Feb 15

mock_helpers
mock_helpers

14 Apr 15

Comentário para crpcut

Comentários não encontrado
Adicionar comentário
Ligue imagens!