Escrevendo blocos test
Os testes ficam junto do seu código.
Escrevendo blocos test é uma aula grátis de Zig Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Zig Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Zig Academy inclui 4 aulas no total.
Os testes ficam no seu código
Em Zig, você não precisa de um arquivo de teste separado. Um bloco test fica ao lado do código que verifica, no mesmo arquivo-fonte.
A palavra-chave test
Você começa um teste com a palavra-chave test, um nome entre aspas e um bloco. O compilador coleta todos eles para você.
test "adds two numbers" {
// checks go here
}Dê nomes claros aos seus testes
A string depois de test é o nome do teste. Um nome claro, como "analisa a entrada vazia", aparece no relatório e informa o que falhou.
test "parses empty input" {}Importe std para fazer asserções
A maioria dos testes precisa de auxiliares, então você importa a biblioteca padrão no início com uma chamada a @import e usa std.testing dentro dela.
const std = @import("std");Um primeiro teste de verdade
Dentro do bloco, você calcula algo e verifica o resultado. Aqui, expect só passa quando a condição booleana é verdadeira.
test "two plus two" {
try std.testing.expect(2 + 2 == 4);
}Os testes podem falhar
Os auxiliares de asserção retornam um erro quando a verificação é falsa. Por isso, você escreve try antes deles, permitindo que a falha encerre o teste.
try std.testing.expect(1 == 2);Teste uma função que você escreveu
Um teste geralmente chama uma das suas próprias funções e verifica o resultado. A função e o test podem compartilhar o mesmo arquivo.
fn add(a: i32, b: i32) i32 {
return a + b;
}Verificando o resultado
Agora execute essa função a partir de um teste e confirme que a saída é a esperada com uma única chamada a expect.
test "add works" {
try std.testing.expect(add(2, 3) == 5);
}Vários testes, um arquivo
Você pode empilhar quantos blocos test quiser. Cada um é executado isoladamente, portanto uma falha não impede os demais.
Os testes são código compilado
Um bloco test é Zig normal e passa por verificação completa de tipos. Se ele não compilar, a execução dos testes para antes mesmo de qualquer código ser executado.
Por que testes embutidos ajudam
Manter as verificações junto do código faz com que os testes evoluam com ele. Quando você altera uma função, o test dela está logo ali para ser atualizado.
Verificação rápida
Você quer declarar um teste unitário em um arquivo-fonte Zig. Qual é o formato correto?
Recapitulação
Você conheceu o bloco test: nomeado, embutido e totalmente compilado como Zig, com asserções usando try. Os testes ficam logo ao lado do código que protegem. ✅
Perguntas Frequentes
A aula “Escrevendo blocos test” é grátis?
Sim — o texto completo de “Escrevendo blocos test” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Zig Academy, atualize para CoddyKit PRO. O curso de Zig Academy inclui 4 aulas no total.
O que vou aprender em “Escrevendo blocos test”?
Os testes ficam junto do seu código. Você pratica Zig Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Zig Academy?
Nenhuma experiência prévia é necessária. Zig Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Escrevendo blocos test”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Zig Academy?
Sim. Cada aula de Zig Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Escrevendo blocos test
- Asserções com std.testing
- O alocador de testes detecta vazamentos
- Executando e filtrando testes