Vamos testar: common_test
- 2 minutes read - 220 wordscommon_test
é uma das aplicações mais interessantes que acompanha a
distribuição Erlang/OTP. Digo isso pois os casos de uso que a ferramenta resolve
são baseados em casos reais da indústria. Podemos realizar vários tipos de
testes, por exemplo:
- black-box, utilizando algum protocolo de comunicação: ssh, netconf, telnet, ftp
- white-box, para testar aplicações escritas em Erlang ou Elixir, fazendo chamadas reais
- unit tests, há vários projetos que utilizam somente o
common_test
para implementar todos os testes necessários
É possível criar suites de testes com várias formas de execução dos testes e organização. Por exemplo: grupos, subgrupos; execução serial, paralela ou definida por cada grupo.
common_test
não possui nenhum suporte para asserts dos valores dentro de um
teste, não é como eunit
. Então para verificar os valores, acabamos utilizando
pattern matching. Mas nada impede de utilizar as macros do eunit
, caso
deseje uma abordagem mais xunit.
Os principais pontos que acho importante são:
- possuei um suporte para carregar configurações dos testes
- relatórios de execução e histórico de execução de cada teste
- suporte para alguns utilitários tais como: ssh, ftp, rpc, cliente netconf, snmp, telnet
- suporte para testes distribuídos em um cluster Erlang ou não
Duas principais documentações de referência:
- Documentação oficial: common_test
- Common Test for Uncommon Tests
É importante ler a documentação pois oferece dicas de como escrever e organizar os testes.