2017-09-21 95 views
6

Bir Xamarin projesi için yazılmış küçük bir rahibe testi var. Mac Mini (jenkins build platformu) terminalinde harika çalışıyorlar. Ben jenkins'de aynı komutu çalıştırdığımda açıklayamayacağım tuhaf bir hatayı alıyorum. Tam dosya yolları sağlamayı denedim ve komutu root olarak çalıştırdım ve hala bu hatayı atıyorum. Bu konuda herhangi bir deneyimi varsa, çok takdir edilecektir. Yapı SüreciIssue Running NUnit Tests On Jenkins

Komut:

nuget restore CoreTests.sln 
msbuild CoreTests.sln /t:Build 
mono nunit3-console.exe CoreTests.dll 

Hata Çıktı:

NUnit Konsolu Runner 3.7.0 Copyright (c) 2017 Charlie Poole, Rob Prouse

Runtime Environment OS Sürümü : MacOSX 16.6.0.0 CLR Versiyon: 4.0.30319.42000

test Dosyalar CoreTests/CoreTests/bin/ayıklama/CoreTests.dll

hatalar, arızalar ve Uyarılar

1) hata: ApplicationName = 'mono', komut satırı = '- işletim zamanı = v4.0.30319 " /Users/falconbot/Documents/NUnit/nunit-agent.exe " 8e81b5fe-8dba-4da0-8612-5c0cabe9d40f tcp: //127.0.0.1: 55001/TestAgency --pid = 97532 ', CurrentDirectory =' ', Yerel error = Belirtilen dosyayı System.Diagnostics.Process.StartWithCreateProcess (System.Diagnostics.ProcessStartInfo startInfo) [0x002dc] 'de < 70507a44a84041d599bbfa8f3d0ea5b1> 0'daadresinde bulamıyorum.System.Diagnostics.Process.Start() [0x0003a] içinde < 70507a44a84041d599bbfa8f3d0ea5b1>: Başlangıç ​​() NUnit.Engine.Services.TestAgency de: (sargı uzak-çağırmak-ile-kontrol) System.Diagnostics.Process de 0 .LaunchAgentProcess (NUnit.Engine.TestPackage paketi) [0x002f2] içinde < 1e8ad6af4c6f4686ad7e5f9e67020b3b> 0 NUnit.Engine.Services.TestAgency.CreateRemoteAgent (NUnit.Engine.TestPackage paketi System.ınt32 waittime) [0x00000] içinde de < 1e8ad6af4c6f4686ad7e5f9e67020b3b> 0 NUnit.Engine.Services.TestAgency.GetAgent de (NUnit.Engine.TestPackage paketi, System.ınt32 waittime) [0x00000]içinde< 1e8ad6af4c6f4686ad7e5f9e67020b3b> 0 (sargı uzak-çağırmak-ile-kontrol) NUnit.Engine.Services.TestAgency de: GetAgent (NUnit.Engine.TestPackage, int) NUnit.Engine.Runners.ProcessRunner.CreateAgentAndRunner de() [0x0003d] < 1e8ad6af4c6f4686ad7e5f9e67020b3b> 'de : 0

: < 1e8ad6af4c6f4686ad7e5f9e67020b3b>' de NUnit.Engine.Runners.ProcessRunner.RunTests (NUnit.Engine.ITestEventListener dinleyici, NUnit.Engine.TestFilter filtre) [0x0001f] 'de 0

Test Çalışması Özet Genel sonuç: Başarısız Test Sayısı: 0, Geçti: 0, Başarısız: 0, Uyarılar: Sonuçsuz 0: 0, Atlandı: 0 Başlangıç ​​saati: 2017/09/28 18: 18: 49Z Bitiş saati: 2017/09/28 18: 18: 49Z Süre: 0.089 saniye

Sonuçları (nunit3) TestResult olarak kaydedildi.xml Yapı adım 'kabuk çalıştır' başarısızlık olarak inşa işaretlenmiş

+0

Nunit3-console.exe dosyasını el ile bir yere mi kopyalıyorsunuz? Konsolun aynı dizinde oturması gereken nunit-agent.exe dosyasını bulamıyor gibi görünüyor. – Chris

+0

Yayının emri için komutu kısaltdım. Bu da nunit-agent.exe dosyasını içeren NUnit adlı bir dizinde saklanır ve jenkins olarak adlandırdığımda nunit3-console.exe dosyasının tam dosya yolu kullanılır. – user3459799

+0

belki de tam hata ayıklama çıktısını göndererek Jenkins'e yardımcı olabilir ve yapılandırmanıza daha ayrıntılı bir şekilde göz atabilirsiniz – ldgorman

cevap

1

hatasız üçüncü hattına alıyorsanız Sağlanan ben olması gerektiği öneririm:

nunit3-console.exe <workspace_relative_path_to_project_containing_tests>.dll 

Yasal Uyarı: Ben NUnit için katkıda duyuyorum proje ve Saucery3 nuget paketinin yazarı. Ama ben bir mono uzmanı değilim.

+0

Yea Ünite testlerini inşa edilen dll ile çalıştırabileceğimin farkındayım. Birim testlerini dll'den Jenkins içinde çalıştırmaya çalıştığımda aynı sonuçları elde ediyorum ancak komut satırından kendim yürüdüğümde iyi çalışıyor. – user3459799

+0

Yapıdaki bir Windows Batch Adımından nunit3-console.exe dosyasını çalıştırmalısınız. nunit3-console.exe dosyasının% PATH% cinsinden olması veya Windows Batch adımında nunit3-console.exe dosyasının tam c: \ rooted yolu olması gerekir. –