Quando si utilizzano Rhino Mocks, quando è opportuno utilizzare "VerifyAll" e quando si deve fare "Assert"?Rhino Mocks: "Verifica" o "Assert"
risposta
VerifyAll e Verify vengono utilizzati per verificare che alcuni metodi siano stati chiamati (e possibilmente verificare i parametri con cui sono stati chiamati). Questo è considerato un "test basato sull'interazione" e viene utilizzato quando si desidera verificare che il sistema sotto test chiami un metodo su una delle sue dipendenze.
Assert normalmente significa che si desidera assicurarsi che il valore restituito abbia il valore corretto. Le asserzioni vengono utilizzate per quello che viene chiamato "test basato sullo stato", che essenzialmente verifica lo stato del sistema sotto test dopo che è stato applicato.
verifyall, check out this.
Inoltre, differenziare Mock and Stub.
Credo che VerifyAll appartenga allo stile più vecchio di utilizzo di RhinoMocks, dove si avrebbe una fase di registrazione e una fase di riproduzione, dopo la quale si verificheranno tutte le aspettative. In questo modello, durante la fase di registrazione, si imposta un'aspettativa (ad esempio, si aspetta che questo metodo venga chiamato con i parametri x, yez, ecc.).
Le versioni più recenti di RhinoMocks introducono la sintassi Arrange-Act-Assert (AAA) come schema preferito; Usando questo modello, ha più senso usare Assertion alla fine del tuo metodo di test. È ancora possibile utilizzare VerifyAllExpectations(), ma personalmente penso che risulti più semplice se tutte le asserzioni si verificano in un blocco alla fine del test.
Quindi immagino che la risposta (almeno a me) sia che si tratti di preferenze personali; Vedere il link sopra dove ha diversi esempi dello stesso test e scegliere quello che si legge meglio per voi.
- 1. Rhino Mocks, VerifyAllExpectations
- 2. AssertWasCalled in rhino mocks
- 3. Rhino Mocks Partial Mock
- 4. Rhino Mocks & Compact Framework
- 5. Rhino Mocks AAA Avvio rapido?
- 6. Rhino Mocks: Repeat.Once() non funziona?
- 7. unit testing Url.Action (usando Rhino Mocks?)
- 8. Documenti di riferimento di Rhino Commons e Rhino Mocks?
- 9. Rhino Mocks: Stub & Mocks. Qual è la differenza
- 10. Rhino Mocks Assert proprietà Setter è stato chiamato con il corretto tipo di oggetto
- 11. Rhino Mocks ricevere argomento, modificarlo e ritornare?
- 12. Mocking delle interfacce COM usando Rhino Mocks
- 13. Il codice multithreading rende Rhino Mocks causa di un deadlock
- 14. Rhino Mocks chiama il metodo reale nel Disporre
- 15. Stubing di una proprietà di sola lettura con Rhino Mocks
- 16. Rhino Mocks - Uso corretto di Arg <T> .Ref
- 17. Mock un oggetto con un costruttore - Rhino Mocks
- 18. Rhino Mocks - Verificare Property Set quando Nr ha Get
- 19. Rhino Mocks - Imposta una proprietà se viene chiamato un metodo
- 20. Posso verificare l'ordine di chiamata del metodo con la sintassi AAA in Rhino-Mocks 3.6?
- 21. Rhino Mocks - AssertWasCalled: Come migliorare un messaggio diagnostico non chiaro quando argomenti errati
- 22. Sintassi Confronto tra Moq e Rhino mazzi
- 23. Assert, verifica e altri comandi in Selenium WebDriver utilizzando C#
- 24. Rhino Mock: Mocking HttpRequestBase.Files
- 25. Assert IEnumerables
- 26. Errore di Rhino Mocks: metodo precedente 'IEnumerator.MoveNext();' richiede un valore di ritorno o di un'eccezione da generare
- 27. Rhino Mocks - Come affermare un metodo di simulazione è stato chiamato n-times?
- 28. Come posso utilizzare Rhino Mocks per verificare quali valori sono stati passati a un metodo
- 29. Qual è la sintassi AAA equivalente all'utilizzo di Ordered() in Rhino Mocks
- 30. Come si esegue lo stub di un Func <T,TResult> in Rhino Mocks?