← Back to list

tdd-development
by renanlido
⭐ 3🍴 0📅 Jan 22, 2026
SKILL.md
name: tdd-development description: Skill para desenvolvimento guiado por testes (Test-Driven Development) triggers:
- "implementar"
- "desenvolver"
- "codar"
- "programar"
- "criar codigo"
TDD Development Skill
Este skill e ativado quando o usuario quer implementar codigo. Garante que todo codigo seja escrito seguindo TDD.
Ciclo Obrigatorio
1. RED - Escrever Teste que Falha
describe('MinhaFuncao', () => {
it('should fazer X quando Y', () => {
const result = minhaFuncao(input);
expect(result).toBe(expected);
});
});
Regras:
- Escreva o teste ANTES do codigo
- O teste DEVE falhar inicialmente
- Teste define o comportamento esperado
- Commit:
test: add test for <funcionalidade>
2. GREEN - Implementar Minimo
function minhaFuncao(input: Input): Output {
// Implementacao MINIMA para passar o teste
return expected;
}
Regras:
- Implemente APENAS o necessario para passar
- Nao adicione funcionalidades extras
- Nao otimize prematuramente
- Commit:
feat: implement <funcionalidade>
3. REFACTOR - Melhorar
function minhaFuncao(input: Input): Output {
// Codigo melhorado, mais limpo
const processed = processInput(input);
return formatOutput(processed);
}
Regras:
- Melhore sem mudar comportamento
- Testes DEVEM continuar passando
- Remova duplicacoes
- Melhore nomes
- Commit:
refactor: improve <o que melhorou>
Padroes de Teste
Ver patterns/test-patterns.md para exemplos.
Anti-Padroes
NAO FACA:
// Implementar primeiro, testar depois
function feature() { ... }
// Teste que testa implementacao, nao comportamento
it('should call methodX', () => {
expect(spy).toHaveBeenCalled();
});
// Teste que depende de outros testes
it('should do B after A', () => {
// Depende do estado de teste anterior
});
FACA:
// Teste primeiro, implementar depois
it('should return X when Y', () => { ... });
function feature() { ... }
// Teste que testa comportamento
it('should return valid user', () => {
expect(result.email).toBe('test@example.com');
});
// Teste independente
beforeEach(() => { /* setup limpo */ });
it('should do B', () => { ... });
Outputs
- Testes em
*.test.tsou*.spec.ts - Codigo em arquivos correspondentes
- Commits incrementais seguindo padrao
Score
Total Score
50/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon