2010-11-22 19 views
2

Genelde benim uygulamalarım çok küçük ve test çerçevem ​​sadece bir konsol projesi. . Oradaki sınıfları statik yöntemlerle ekleyip kodumu test ediyorum. Oldukça basit ve güzel olmak için bu yaklaşımı buluyorum (özellikle çıktıyı görebilirsiniz)Test veya cihaz testi ile ilgili bazı temel sorular

Şimdi görsel stüdyosunda güzel bir küçük test projem var, bu yüzden donuk şeyleri nasıl test edeceğiniz konusunda biraz kafam karışmıştı 't örneğin gibi birimi görünüyor:

Purchase.LoadAllAsync()//finished loading on the loadcomplete event 

Bunun için birim testi ne tür yazardınız? Özellikle bu, veritabanındaki nelere göre değişecek?

Bazı SO üzerinde izcilik yaptım ve bunu buldum: Bir test bir birim test değilse, ayrıca beni karıştı When is a Test not a Unit-test?

, bunu nasıl test?

Bazen genellikle ana formda küçük bir sınama işlevi veya ana ekranda gümüş ışığı yazarım ve sonra silmem. Ama sanırım ünite testi kullanılıyor çünkü testler orada kalıyor, böylece onları tekrar kullanabiliyorsunuz?

Biraz fazla cahil olduğum için üzgünüm! Dış koddan çağrıldığında başarısız uygulamanın kendisinden ince çalıştırmak testler hakkında ne ama: = P
Teşekkür

Güncelleme


Ayrıca eklemek istedim. (Bu bana birkaç kez oldu) Siz de mi oluyorsunuz ve/veya kötü bir tasarım mı?

+0

[test veya birim testi ile ilgili bazı temel sorular] 'nın olası kopyası (http://stackoverflow.com/questions/4243374/some-basic-questions-on-testing-or-unit-testing) –

+0

@Pieter You' ve soruma bağlı mı? – gideon

+0

@Pieter, sadece _one_ bir kopyası olabilir, biri orijinal olmalıdır :-) – paxdiablo

cevap

5

Testlerinizi kontrolünüz dışındaki koşullara bağlı, yapmanız gereken ilk şey, diğer bir deyişle

:-) sizin onları kontrol altına almak olduğunu parçası olarak bir test veritabanı ve, kullanmalıdır test Kurulumun boş olması, ardından bu veritabanının bilinen, tahmin edilebilir verilerle doldurulması gerekir. Alternatif olarak, saplama yordamları koyabilir ve veritabanı erişimini tamamen önleyebilirsiniz. Sonsuz süt ineği kadar yararlı olmayan bir test de yaklaşık belirsiz bir testtir. Çalışmak için görünebilir, ancak sonuç olarak beklediğiniz kadar tatmin edici değildir.

+0

tamam Async yöntemi hakkında ne? Daha sonra ne zaman yüklendiğini nasıl yüklerim? – gideon

+1

Eşzamanlı değilse, anında geri dönüşü kontrol etmelisiniz, ya da (1) bir noktada (uygun bir zaman aşımıyla) bir asenkron çalışma tamamlandı göstergesini yakalayın veya (2) nihayetinde verileri tekrar yüklediğini görmek için periyodik olarak kontrol edin. bir zaman aşımı ile). Eşzamansız bir işlem endikasyonsuz çok kullanışlı olmadığından, (1) muhtemelen en muhtemel durumdur ancak ihtiyaçlar varsa (2) kullanmak zorunda kalabilirsiniz. – paxdiablo

+0

@paxdiablo (1) visual studios unit test env'de nasıl çalışır? Bir birim testi, sadece bir statik yöntem değil mi? – gideon

İlgili konular