O AI-Test-Generator é uma ferramenta em Python que automatiza a criação de testes unitários robustos com pytest para funções Python.
Utilizando a API da OpenAI, o projeto gera testes seguindo o padrão Arrange-Act-Assert (AAA), cobrindo:
- ✅ Cenários típicos de sucesso
⚠️ Casos extremos (ex.: listas vazias, números negativos)- ❌ Tratamento de exceções (usando
pytest.raises)
Ideal para desenvolvedores que querem aumentar a qualidade do código sem escrever testes manualmente.
- Geração automática de testes unitários para qualquer função Python.
- Criação de arquivos de teste na pasta
Test/. - Estrutura AAA rigorosa para clareza e manutenção.
- Suporte a múltiplos testes por função (definido pelo usuário).
-
Clone o repositório:
git clone https://github.com/seu-usuario/AI-Test-Generator.git cd AI-Test-Generator -
Crie e ative um ambiente virtual:
python -m venv venv source venv/bin/activate # Linux/Mac venv\Scripts\activate # Windows -
Instale as dependências:
pip install openai pytest -
Configure sua API Key da OpenAI no arquivo principal main.py:
Client = OpenAI(api_key="SUA_CHAVE_AQUI")
Execute o script principal:
1. python main.py
2. Cole o código da função que deseja testar.
3. Defina o número de testes a gerar (máx. 3 recomendado).
4. O script criará automaticamente os testes na pasta Test/.
AI-Test-Generator/
│
├─ main.py # Script principal
├─ Test/ # Pasta onde os testes são gerados automaticamente
│ └─ test_function.py
├─ README.md
└─ requirements.txt # Dependências do projeto
from main_app import soma
import pytest
def test_soma_success():
# Arrange
a = 5
b = 3
expected = 8
# Act
result = soma(a, b)
# Assert
assert result == expected
def test_soma_negative():
# Arrange
a = -5
b = -10
expected = -15
# Act
result = soma(a, b)
# Assert
assert result == expected
Contribuições são bem-vindas! Abra issues ou pull requests para melhorias, bugs ou novas funcionalidades.
Feito em Python | #SoftwareEngineering 🧠
