Testar no percurso de SQLite

Aprende a testar os teus exercícios de SQLite no Exercism


Para executar os testes dos teus exercícios de SQLite, segue estes passos:

  1. Abre o teu terminal preferido.
  2. Navega até ao diretório que contém o ficheiro ${slug}_test.sql correspondente, em que ${slug} é o nome do exercício, com hífenes em vez de espaços e tudo em minúsculas.
  3. Executa o seguinte comando:
sqlite3 -bail < ${slug}_test.sql

Este comando inicializa o SQLite com uma base de dados vazia, executa os testes especificados em ${slug}_test.sql e termina de seguida. A opção -bail garante que a execução do código para quando o código é inválido.

Os resultados dos testes são apresentados na consola como uma tabela, que mostra a descrição de cada teste, o seu estado (por exemplo, "pass") e uma mensagem se o estado for "fail".

Depuração

Podes usar instruções SELECT para depurar. O resultado é redirecionado para user_output.md e apresentado no editor web se os testes falharem.

Detalhes da execução

O ficheiro de testes (${slug}_test.sql) é um script bastante complexo. Eis uma visão geral do que ele faz.

  1. Prepara as tabelas ao ler o ficheiro create_fixture.sql. Isto cria as tabelas e depois preenche-as 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; as alterações a outras tabelas são ignoradas.
  2. Executa o código da solução ao ler o ficheiro ${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) atualizadas pela solução.
  5. Apresenta os resultados dos testes (pass ou fail e detalhes opcionais). Estes ficheiros CSV contêm os dados necessários para testar vários cenários.