การทดสอบ dotnet - รหัสออก 0 เมื่อโครงการทดสอบไม่ได้คอมไพล์

ฉันใช้ TeamCity เพื่อสร้างโครงการ .NET Core ของฉันและ dotnet test พร้อม xunit เพื่อรันการทดสอบ

บิลด์ของฉันได้รับการกำหนดค่าให้ล้มเหลวหากการทดสอบใด ๆ ล้มเหลว และวิธีนี้ใช้ได้ดีหากการทดสอบล้มเหลว แต่เมื่อโปรเจ็กต์การทดสอบไม่คอมไพล์ รหัสทางออกจะกลายเป็นศูนย์

ฉันเชื่อว่าเป็นเพราะฉันเรียกใช้ dotnet test ในโฟลเดอร์ที่มีไดเรกทอรีทดสอบดังนี้: for /f %%%a in ('dir /b /s project.json') do dotnet test %%%a

เมื่อดูบันทึก ฉันสามารถเห็นงานแต่ละงานที่ไม่ได้คอมไพล์ส่งคืนด้วยรหัสทางออก 1 แต่ขั้นตอนการสร้างนั้นส่งคืนด้วยรหัสทางออก 0

ฉันจะทำให้โค้ดออกจากการพยายามคอมไพล์ที่ล้มเหลวเผยแพร่ลงไปจนถึงขั้นตอนการสร้างได้อย่างไร


person severin    schedule 13.09.2016    source แหล่งที่มา


คำตอบ (1)


คุณสามารถสร้างขั้นตอนแยกต่างหากใน TC เพื่อคอมไพล์โปรเจ็กต์ทดสอบเป้าหมาย จากนั้นรันการทดสอบโดยไม่ต้องคอมไพล์ (โดยใช้ตัวเลือก no-build) ในขั้นตอนถัดไป (หากขั้นตอนก่อนหน้าทั้งหมดสำเร็จ)

--no-build
Does not build the test project prior to running it.
person Set    schedule 13.09.2016