O cliente de testes e os dispositivos de teste
Inicialize um aplicativo e um cliente para testes.
O cliente de testes e os dispositivos de teste é uma aula grátis de Flask 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 Flask Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Flask Academy inclui 4 aulas no total.
Por que testar seu aplicativo Flask
Os testes permitem alterar o código sem medo. Com pytest, você comprova em segundos que cada rota continua funcionando, em vez de navegar manualmente pelo aplicativo. 🧪
Conheça o cliente de testes
O Flask inclui um navegador simulado chamado cliente de testes. Ele chama suas rotas na memória, sem servidor real nem rede.
client = app.test_client()
resp = client.get('/')Obter um cliente do aplicativo
Crie o cliente chamando app.test_client(). Ele retorna um objeto cujos métodos correspondem aos verbos HTTP reais, como get e post.
from app import app
client = app.test_client()Enviar uma solicitação e obter uma resposta
Chamar client.get('/') retorna um objeto de resposta. Você o inspeciona como faria com uma resposta real, mas tudo é executado instantaneamente dentro do Python.
resp = client.get('/')
print(resp.status_code)O que é um acessório de teste
Um acessório de teste é um código de configuração reutilizável que o pytest executa antes de um teste. Em vez de recriar o cliente em todos os lugares, defina-o uma vez e reutilize-o.
Escrever um acessório de cliente
Decore uma função com @pytest.fixture e produza um cliente de testes. Qualquer teste que o nomeie como argumento receberá um cliente novo.
@pytest.fixture
def client():
yield app.test_client()Solicitar o acessório pelo nome
Para usar um acessório, basta adicionar seu nome como um argumento do teste. O Pytest encontra a correspondência e injeta o valor automaticamente.
def test_home(client):
resp = client.get('/')
assert resp.status_code == 200Yield versus Return em acessórios
Usar yield permite executar a limpeza depois que o teste termina. O código antes de yield prepara o ambiente; o código depois de yield desfaz tudo.
@pytest.fixture
def client():
yield app.test_client()
print('cleanup here')Onde colocar os acessórios
Coloque os acessórios compartilhados em um arquivo chamado conftest.py. O Pytest o encontra automaticamente, então todos os arquivos de teste podem usar esses acessórios sem importação.
Nomear arquivos de teste
O Pytest encontra arquivos que começam com test_ e funções com nomes no mesmo padrão. Siga essa convenção e seus testes serão executados com um único comando.
# file: test_routes.py
def test_home(client):
...Executar toda a suíte
Na raiz do projeto, execute pytest no terminal. Ele reúne todos os arquivos de teste, executa-os e exibe um resumo claro de aprovação ou falha.
$ pytest
2 passed in 0.04sVerificação rápida
Você quer um cliente de testes reutilizável. Como fazer isso?
Recapitulação: cliente e acessórios
Você conheceu o cliente de teste em memória e aprendeu a compartilhá-lo com uma fixture em conftest.py. Agora todo teste começa com um cliente pronto. 🎉
Aprenda Python com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 30
- Aulas
- 120
Perguntas Frequentes
A aula “O cliente de testes e os dispositivos de teste” é grátis?
Sim — o texto completo de “O cliente de testes e os dispositivos de teste” é 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 Flask Academy, atualize para CoddyKit PRO. O curso de Flask Academy inclui 4 aulas no total.
O que vou aprender em “O cliente de testes e os dispositivos de teste”?
Inicialize um aplicativo e um cliente para testes. Você pratica Flask 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 Flask Academy?
Nenhuma experiência prévia é necessária. Flask 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 “O cliente de testes e os dispositivos de teste”?
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 Flask Academy?
Sim. Cada aula de Flask 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
- O cliente de testes e os dispositivos de teste
- Verifique rotas e JSON
- Isole testes com um banco de dados de teste
- Teste endpoints autenticados