2016-04-28 41 views
5

üzerinde çalışmıyor, şu anda MSTest - NUnit (sürüm 3.2.1) kullanarak birim sınamalarımızı geçiriyoruz, ancak NUnit sınamalarını TFS. Xaml derleme tanımımızdan çalıştırarak sorun yaşıyoruz. TFS derleme tanımı, "Testlerle eşleşen testlerde ** \ *. Test * .dll" komutunu kullanıyor. Benim NUnit testi proje için ben yüklü, indirilen ve aşağıdaki Nuget paketlerini başvurulan adres:NUnit3 testleri, TFS build

1) NUnit v3.2.1

2) NUnit3TestAdapter v3.0.10

VS içinde benim testleri yürütülmesi (test kaşif) Mükemmel çalışır ve bu adımların TFS'de CI yapısının bir parçası olarak çalıştırıldığından emin olmak için yeterli olacağını düşündüm, ancak testler hiçbir zaman yürütülmez. Tanılama çıktısında bu sınamalarla ilgili hiçbir hata/uyarı/iletiye sahip değilim, ancak derleme işleminin, söz konusu joker kuralıyla (** \ *. * .dll).

Ayrıca, NUnit3TestAdapter derlemeleri, TFS için derleme denetleyicisi özelliklerinde tanımlanan "boş sürümler için Sürüm denetim yolu" klasörüne koymaya çalıştım, ancak boşuna.

Burada bir adımı kaçırıp kaçırmadığımı herkes görebilir. Bu forumlarda okuduğum her şeyden, gerekli olan her şeyi yapmış gibi görünüyorum ama hala idam edilmiyorlar.

Yalnızca NUnit testlerimi içeren derlemede MSTest, exe'yi (TFS yapısının kullandığı) çalıştırarak sorunu büyük ölçüde basitleştirdim. Söz konusu düzeneğin hem bağdaştırıcı hem de NuGet paketleri olarak yüklü rahibe çerçeveleri vardır ve yine de MsTest hiçbir sınama bulunmadığını bildirir (aşağıya bakın):

C: \ Users \ hdav> "C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ MSTest.exe" /testcontainer:e:\MyCode\nunit\ExpectedExceptionExample\bin\Debug\ExpectedExceptionExample.dll

Yükleme e: \ BBKod \ nunit \ ExpectedExceptionExample bin \ Debug \ \ ExpectedExceptionExample.dll ...

yürütme başlatılıyor ...

yürütmek için hiçbir testler.

+0

Yapı günlüğünüzü paylaşabilir misiniz? TestAdapter'ı, oluşturma sırasında geri yüklendiğini görebiliyor musunuz? –

+0

Yapı günlüğünü gerçekten sizinle paylaşamıyorum, ancak TestAdapter'i "geri yüklendi" ifadesini görerek ne demek istediğinizi ayrıntılandırabilir misiniz? Eğer varsa, NUnit3.TestAdapter.dll kastettiğinizi varsayalım, o zaman evet inşa günlüğünde aşağıdaki satırı görüyorum: "$/TFSAdministration/BuildProcessTemplates/CustomAssemblies/NUnit3.TestAdapter.dll 'dan eşleme ekleme .... .. " – davies

+0

" MsTest "kullanarak testleri çalıştırırken sadece eski stil MsTest projeleri yürütülür. Yeni genişletilebilir test koşucusunu yüklemek için, * bunun yerine * vstest.console.exe'yi çalıştırmalısınız. – jessehouwing

cevap

0

Aynı sorunu yaşıyordum ve adaptörün testleri keşfetmesi için test projelerinin pbd dosyalarının bulunması gerektiğini buldum.

Yerel olarak .pbd dosyaları üretilirken, yapı (bu durumda TF Build) MSBuild bağımsız değişkenlerine /p:DebugType=None anahtarını sağlıyordu. Anahtarın kaldırılması, testlerin keşfedilmesine ve yapıda çalışmasına izin verdi. Yapı tanımınızda benzer bir şey var mı?

Sorun, GitHub'da bug olarak kabul edildi.