2012-09-23 13 views
5

Windows Store App geliştirme için iyi bir TDD kurulumu olan var mı? Çok alaycı çerçeveler kullanmaya alışkınım, ancak bu dinamik bir jenerasyon oluşturma WinRT'de eksik olduğundan bu bir seçenek değil.TDD for Windows Store uygulama geliştirme alay olmadan

Alfa MoqRT çerçevesini gördüm, ancak bu tür deney aşamalarında bir şeyden kaçınmayı umuyorum. Ayrıca Microsoft'tan (Microsoft Fakes) alternatif olarak sunulan taslakları veya şimleri kullanmayı düşündüğüm sahte nesneleri kullanarak da çok şımarık oldum.

Herhangi biriniz DI ve düzgün yalıtılmış TDD tarzı ünite testleri kullanarak Windows Mağazası Uygulaması geliştirme için iyi teknikler geliştirdiniz mi? Eğer öyleyse, ne yaptın?

Düzenleme:

Ben de belki bir seçenek değildir, böylece "Fakes Meclisi Ekle" seçeneği, benim "Windows Mağazası Uygulama" birim test projesinde mevcut olmadığı dikkat edin.

cevap

3

Şu anda denediğim yaklaşım, test edilebilir normal bir test projesi kullanarak alaylarla test edilmesini sağlayarak test edilebilir kodu düzenli bir .NET 4.5 montajına yerleştirmektir. Ardından, Windows Mağazası Uygulaması projesinde, aynı kaynak dosyalar bağlantı olarak eklenir. Bu iki platform arasındaki proje referanslarını kopyalamak zorunda olduğum için elverişsiz bir durumdur ve kodun her iki projede de derlenmesini sağlamaya dikkat etmeliyim, ancak bu yaklaşım daha iyi birim test araçları kullanmamı sağlıyor.

Hala daha iyi bir şey olup olmadığını görmek için sabırsızlıkla bekliyorum.

+3

Sadece birkaç saatimi başımın üstüne vurarak geçirdim! Bu çılgınca! Microsoft, Windows Mağazası uygulamaları için MVVM'yi destekliyor ve DI ile birim testi (alay veya sahte varlıklar varsayarak) MVVM kullanımı için çok büyük nedenler. Bunu yapmak son derece zor olduğu için hayret verici bir gözetim. Bu geriye doğru büyük bir adım. –

0

Kullandığınız Windows Mağazası Uygulamasında Telerik JustMock'u kullanarak alay edebilirsiniz. Test projenize aldığınız bir DLL dosyasını sunan ayrı bir yükleyici olarak kullanılabilir. Ücretsiz, ama önce kayıt olmalısın.

Sözdizimi Moq gibi farklı değil. Ayrıca, yararlı uzantılar eklemek için Telerik.JustMock.Helpers ad alanını da eklemeyi unutmayın.

Şu anda Prism.StoreApps kullanarak bir Universall App geliştirmek için kullanıyorum. JustMock ile şimdi ViewModel'imi ayrı ayrı test edebiliyorum. Artık yazılımımın tüm katmanlarını test edebilirim, artık PCL katmanları oluşturmak zorunda kalmıyorum. Onlar artık Taşınabilir 8.1 projeler.

+3

JustMock'ın henüz kazanılmadığı 10 görünüyor: yükleme paketi: JustMock 2015.2.715.1, UAP, Version = v10.0 (win10-x64-aot) ile uyumlu değil. – faester