Aggiunta di alternatori condizionali in metodi per l'esecuzione di test

3

Recentemente abbiamo iniziato a scrivere test per la nostra base di codice PHP piuttosto ampia - utilizzando PHPUnit stiamo scrivendo unit e test di integrazione per i nostri modelli e controller.

Qual è il consenso nell'impostazione di un commutatore booleano che indica se una classe è in TEST_MODE che altera il comportamento di un metodo?

Ad esempio: una funzione di supporto email - non abbiamo bisogno di inviare una email durante un test e non testiamo il server di posta, solo che quel metodo è stato chiamato.

if (self::TEST_MODE) {
    return true;
}

Sto già uscendo da questa idea - non credo che aggiungere controlli extra per tutta la serie di codice per i test sia una soluzione elegante.

Ma in questo esempio, ad esempio, quale sarebbe un buon modo per controllare che l'e-mail sia stata inviata?

    
posta Dan J 20.02.2012 - 12:40
fonte

1 risposta

8

what would be a good way to check the email has been sent?

Questo è il motivo per cui la gente inventare mocciose.

Inizia a leggere su PHP Mock Libraries. Ad esempio: link .

Sono sicuro che ce ne sono ancora una dozzina.

    
risposta data 20.02.2012 - 12:57
fonte

Leggi altre domande sui tag