Zombando funções PHP em testes unitários
Estou testando um código PHP com o SimpleTest e já tive problemas. Nos meus testes de uma classe de banco de dados eu quero ser capaz de definir uma expectativa para PHPsmysql
funções. Nos meus testes de uma classe wrapper para omail
função que eu quero zombar PHPsmail
função. Estes são apenas alguns exemplos.
O ponto é: Eu não (sempre) quero testar se a minha classe Mail envia e-mail, quero testar como ele chama omail
função. Eu quero ser capaz de controlar o que essas funções retornam. Eu quero ser capaz de testar minha classe de banco de dados sem precisar de um banco de dados, acessórios e muito mais.
Eu tenho alguma experiência com testes de código Ruby, e Test :: Unit e RSpec tornam muito fácil testar o código isoladamente. Eu sou novo em testar PHP e parece que estou testando muito mais do que deveria, a fim de fazer meus testes passarem.
Existe uma maneira no SimpleTest ou no PhpUnit ou em alguma outra estrutura de teste que torne isso possível ou mais fácil?