7. "Mesmo bons programadores cometem
erros. A diferença entre um bom e um
mau programador é que o bom
programador usa testes para detectar
seus erros o mais cedo possível."
phpunit
8. Fluxo de desenvolvimento sem testes automatizados:
1) Editar o código.
2) Abrir o navegador e entrar manualmente dados (posts,
comentários), ativar o plugin, alterar configurações.
4) Verificar se existem erros em 200 lugares diferentes.
5) Repetir os passos acima um milhão de vezes, para ter
certeza.
6) Passar o resto da semana dando suporte.
9.
10.
11.
12. Fluxo de desenvolvimento com testes
automatizados:
1) Editar o código.
2) Abrir o terminal.
3) Executar os testes.
4) Correr pro abraço.
29. Perguntas e Respostas
A factory do WordPress cria os posts em banco? Sim, ela
usa as funções do WordPress por debaixo dos panos
(wp_insert_user, wp_update_post...).
É possível usar mocks em vez de acessar o banco? Sim, o
phpunit tem suporte a mocks.
Tem alguns exemplos de projetos com unit test? Os
plugins jetpack, liveblog, wordpress-seo.
30. Perguntas e Respostas
Como garantir que os testes foram desenvolvidos
corretamente? Não há como garantir. É um exercício de
criatividade pensar no que poderia dar errado. Porém, o
relatório de cobertura de testes ajuda a entender o que foi
testado.
O travis-ci tem relatório de cobertura de testes? Não, mas ele
se integra bem com ferramentas como code climate e
coveralls. Algumas ferramentas como scrutinize têm relatório
de cobertura embutido. No jenkins é possível instalar plugins.