Como rodar todos os testes pelo poetry usando a linha de comando

Maiquel Leonel
2 min readMar 12, 2021

Uma coisa que eu sempre gostei foi de atalhos curtos para rodar comandos complexos. São mais rápidos de digitar (:D) e mais simples de lembrar. O comando poetry new [meu-projeto] provê uma estrutura básica para um novo projeto. Contudo, o poetry, por padrão, não possui um comando pronto que automatiza a execução dos testes, pelo menos não de maneira intuitiva e automática. Como precisei procurar, resolvi escrever essa dica aqui pra ajudar.

Para deixar a execução de testes muito mais simples, faz-se necessário uma pequena configuração extra, de maneira que os testes passem a rodar com um poetry run tests por exemplo.

Primeiramente, precisamos criar o código que execute o comando do python e encapsulá-lo em uma função. Sabendo disso, criamos o arquivo scripts.py na raiz do projeto com o seguinte conteúdo:

Depois basta dizer pro poetry que queremos um novo comando chamado tests e que esse comando executa a função testes.
No arquivo pyproject.toml logo antes de [build-system]basta adicionar o seguinte trecho:

[tool.poetry.scripts]
tests = "scripts:tests"

E That’s it! Agora basta rodar poetry run tests para que o poetry rode todos os arquivos de testes salvos na pasta tests/*.

Massa né?!

Se gostou do post ou ele foi útil de alguma forma eu adoraria saber. Considere também deixar as palminhas aí, que eu sou muito grato :). Considere também compartilhar com a “rapeize”, me seguir no github e/ou nas redes sociais. Meu muito obrigado pra quem leu até aqui.

--

--

Maiquel Leonel

Ciêntista de dados, Arquiteto e Desenvolvedor web apaixonado por tecnologia, cerveja artesanal, café, pizza, literatura, RPGs, cinema, Linux e alguns seriados.