Testes no track SQLite

Aprenda a testar seus exercícios de SQLite no Exercism


Para rodar os testes dos seus exercícios de SQLite, siga estes passos:

  1. Abra o seu terminal preferido.
  2. Navegue até o diretório que contém o arquivo ${slug}_test.sql apropriado, em que ${slug} é o nome do exercício, usando hífens no lugar de espaços e tudo em minúsculas.
  3. Execute o seguinte comando:
sqlite3 -bail < ${slug}_test.sql

Esse comando inicializa o SQLite com um banco de dados vazio, roda os testes especificados em ${slug}_test.sql e sai em seguida. O -bail garante que a execução do código pare diante de código inválido.

Os resultados dos testes serão exibidos no console como uma tabela, mostrando a descrição de cada teste, o status dele (por exemplo, "pass") e uma mensagem se o status for "fail".

Depuração

Você pode usar instruções SELECT para depurar. A saída será encaminhada para user_output.md e exibida no editor web se os testes falharem.

Detalhes da execução

O arquivo de teste (${slug}_test.sql) é um script bem complexo. Veja uma visão geral do que ele faz.

  1. Monta as tabelas lendo create_fixture.sql. Isso cria tabelas e depois as preenche com valores de data.csv para dados válidos e de error_data.csv para entradas que devem falhar. Só essas tabelas são verificadas durante os testes; mudanças em outras tabelas são ignoradas.
  2. Roda o código da solução lendo o arquivo ${slug}.sql.
  3. Cria tabelas para guardar os casos de teste e os resultados.
  4. Preenche os resultados dos testes com base nos dados da(s) tabela(s) atualizada(s) pela solução.
  5. Exibe os resultados dos testes (pass ou fail e detalhes opcionais). Esses arquivos CSV contêm os dados necessários para testar vários cenários.