2012-09-23 5 views
5

Qualcuno ha ideato una buona configurazione TDD per lo sviluppo di app di Windows Store? Sono così abituato a utilizzare i framework di simulazione, ma questa non è più un'opzione poiché la generazione dell'assemblaggio dinamico non è presente in WinRT.TDD per lo sviluppo di app di Windows Store senza mocking

Ho visto il framework alfa MoqRT, ma spero di evitare qualcosa in queste fasi sperimentali. Sono anche stato così viziato dall'usare oggetti mock che mi impediscono di usare gli stub o gli shim offerti come alternativa a Microsoft (Microsoft Fakes).

Qualcuno di voi ha individuato con successo buone tecniche per eseguire lo sviluppo di app di Windows Store utilizzando DI e test di unità TDD correttamente isolati? Se è così, cosa hai fatto?

Edit:

Ho anche notato che l'opzione "Aggiungi Assemblea Fakes" non è presente nel mio progetto unit test "Windows App Store", in modo che forse non è un'opzione.

risposta

3

L'approccio che sto provando ora consiste nel collocare il codice verificabile in un normale assembly .NET 4.5, che consente di testare l'unità con mock utilizzando un normale progetto di test dell'unità. Quindi, nel progetto App Store di Windows, questi stessi file di origine vengono aggiunti come collegamenti. Ciò è inopportuno dal momento che devo duplicare i riferimenti di progetto tra le due piattaforme e devo fare attenzione a garantire la compilazione del codice in entrambi i progetti, ma questo approccio mi consente di utilizzare migliori strumenti di test delle unità.

Sto ancora aspettando con impazienza di vedere se qualcuno esce con qualcosa di meglio.

+3

Ho appena trascorso un paio d'ore sbattendo la testa su questo! Questo è pazzesco! Microsoft sta promuovendo MVVM per le app di Windows Store e il test delle unità con DI (presupponendo la presenza di mock o falsi) sono motivi enormi per l'utilizzo di MVVM. Che sia estremamente difficile farlo è solo una sbalorditiva supervisione. È un grande passo indietro. –

0

Sarai in grado di simulare in Windows Store App come sei abituato utilizzando Telerik JustMock. È disponibile come programma di installazione separato che fornisce una DLL importata nel progetto di test. È gratuito, ma devi prima registrarti.

La sintassi non è così diversa come Moq. Ricorda di aggiungere anche lo spazio dei nomi Telerik.JustMock.Helpers per aggiungere estensioni utili.

Attualmente lo sto utilizzando per sviluppare un'applicazione Universall utilizzando Prism.StoreApps. Con JustMock sono ora in grado di testare il mio ViewModel in isolamento. Ora posso testare tutti gli strati del mio software, non sono più costretto a creare strati PCL. Ora sono progetti Portable 8.1.

+3

Sembra che JustMock non sia ancora stato portato su win10: pacchetto di installazione: JustMock 2015.2.715.1 non è compatibile con UAP, versione = v10.0 (win10-x64-aot). – faester