Testes e extensões
Teste com casos extremos e adicione pequenas melhorias. Mantenha os exemplos simples e fáceis de ler.
Testes e extensões é uma aula grátis de Java Academy no CoddyKit. Esta é a aula 3 de 3. 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 Java Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Java Academy inclui 3 aulas no total.
Por que testar
Por que testar? Testes pequenos detectam surpresas logo no início. Começamos com entradas fáceis e adicionamos casos extremos passo a passo.
Caminho esperado
Primeiro, experimente uma frase curta com palavras claras. Espere que os totais correspondam e que as palavras mais frequentes façam sentido.
Casos extremos
Casos extremos: cadeia vazia, apenas espaços, somente pontuação, números misturados com palavras e espaços repetidos. Nenhum deles deve causar uma falha, e todos devem produzir contagens coerentes.
Verificação da normalização
Use maiúsculas e minúsculas misturadas e vírgulas para verificar a normalização. Depois de converter para minúsculas e limpar o texto, as formas com diferentes combinações de maiúsculas e minúsculas devem ser contadas como a mesma palavra.
Pequenas extensões
Pequenas extensões: ignore palavras muito curtas, como artigos de uma ou duas letras, escolha N palavras mais frequentes usando uma variável e exiba os empates em qualquer ordem. Mantenha as alterações mínimas e fáceis de ler.
Código: testes pequenos
Execute: cada amostra exibe os totais e as contagens de palavras únicas. Isso ajuda a verificar o tratamento de entradas vazias, espaços, pontuação e diferentes combinações de maiúsculas e minúsculas.
public class Main {
public static void main(String[] args) {
// Very small test set for beginners. Each case prints a short result.
String[] samples = new String[] {
"Hello world hello",
"", // empty
" ", // spaces
"Hello, HELLO, hello!", // mixed case and punctuation
"Numbers 1 2 3 and words", // numbers and words
"Only... punctuation!!!" // punctuation only
};
for (int t = 0; t < samples.length; t = t + 1) {
String text = samples[t];
System.out.println("-- Case " + (t + 1) + " --");
// 1) Lowercase
String lower = text.toLowerCase();
// 2) Replace non letters with spaces
String cleaned = lower.replaceAll("[^a-z]+", " ");
// 3) Split on spaces and filter empties
String[] tokens = cleaned.trim().split("\\s+");
java.util.Map<String, Integer> freq = new java.util.HashMap<>();
int total = 0;
for (int i = 0; i < tokens.length; i = i + 1) {
String w = tokens[i];
if (w.length() == 0) continue;
// Optional tiny extension: skip one letter words like "a"
if (w.length() == 1) continue;
total = total + 1;
Integer c = freq.get(w);
if (c == null) freq.put(w, 1);
else freq.put(w, c + 1);
}
// Print a very small summary (no top N here to keep it simple)
System.out.println("Total words: " + total);
System.out.println("Unique words: " + freq.size());
}
}
}
Teste da normalização
Verificação rápida: qual entrada é melhor para verificar a normalização — maiúsculas, minúsculas e pontuação?
Revisão
Revisão: testamos os caminhos esperados e os casos extremos, depois adicionamos pequenas extensões, como ignorar palavras de uma letra. Mantenha os exemplos curtos e fáceis de ler.
Perguntas Frequentes
A aula “Testes e extensões” é grátis?
Sim — o texto completo de “Testes e extensões” é 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 Java Academy, atualize para CoddyKit PRO. O curso de Java Academy inclui 3 aulas no total.
O que vou aprender em “Testes e extensões”?
Teste com casos extremos e adicione pequenas melhorias. Mantenha os exemplos simples e fáceis de ler. Você pratica Java 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 Java Academy?
Nenhuma experiência prévia é necessária. Java 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 3 de 3.
Quanto tempo leva a aula “Testes e extensões”?
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 Java Academy?
Sim. Cada aula de Java 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
- Requisitos e design
- Implementação
- Testes e extensões