Hayır, MS Word Belgesi nesil birim test yapmadım ama Ingo Vals söylediği gibi, bu birim test başka bir biçimde herhangi bir farklı olmamalıdır.
1) [İsteğe bağlı - Eğer ihtiyaçları için SDK doğru kullanımını anlamak sağlamak için]. Uygulamanızın SDK'yi nasıl sürmesi gerektiğini öğrenin. İstenen işlevselliği taklit eden bazı test komut dosyaları yazın ve oluşturdukları Word belgelerinin beklentilerinizi karşıladığından emin olun.
2) Eğer dokümantasyon üretimi için ihtiyaç işlevselliği karşılık yöntemleri içermesi bir arayüz (veya arayüzler) oluşturun. Not: Arayüzün OpenXML SDK'sının tam işlevselliğini sunması gerekmez - sadece uygulamanız için ihtiyaç duyduğunuz işlevler.
3) açık XML SDK
4) yararlanın çağrıları, doküman üretimini gerçekleştirmek için uygulamada oluşturulan arayüz iletir senin arayüzü somut bir uygulama oluşturun.
5) Kullanım NUnit ve NMock (veya benzeri) Başvurunuzun nesil tabakasını sürücü birim testleri yazmak için. Bu testler, somut uygulamanın bir örneğinden ziyade alaylı bir arayüz kullanmalıdır. Artık testlerinizde, üretim katmanınızın beklediğiniz gibi davrandığını iddia edebilirsiniz. Openxml Sdk 2.0 ve geçerli koduyla ilgili
Neden açık XML birim test standardından daha farklı olmak zorunda. Belgenin kelime içinde açılıp açılmayacağını veya iyi görünüp görünmeyeceğini doğrulamaya çalışıyor musunuz? –
Farklı değil, sadece teknik olarak zor. Tipik test, Düzenleme-Hareket Ettirme'dir. Öyleyse soru, son bölümü nasıl kolayca yapabiliriz - Assert. Muhtemelen bazı kelime otomasyon veya UI otomasyon çerçevesini kullanarak, ancak bunu yapmak için kolay bir yol görmüyorum. Sonuç olarak, rapor üreten ve kelime olarak açılmış testlerle sona erdiğim için, raporun iyi olup olmadığını manuel olarak kontrol ediyorum. Bu "saf" birim testi değil, gerekli raporları oluşturmak için tam uygulamayı çalıştırmaktan daha iyi. Ayrıca, Açık XML ile doğrudan çalıştığım kodları test ettim, diğer tüm parçaları ayırdım ve her zamanki birim testleri ile test ettim. – Andrii