ใช้งาน xunit.console บน ASP.NET Core Targeting NET451

ฉันได้สร้างไลบรารี ASP.NET Core ที่กำหนดเป้าหมาย NET451, DNX451 และ DNXCORE50 เพื่อทดสอบไลบรารี่ จะใช้ xUnit.net ภายใน Visual Studio 2015 เป้าหมายทั้งหมดสามารถรันการทดสอบหน่วยได้ อย่างไรก็ตาม ฉันพบว่าเมื่อใช้บรรทัดคำสั่ง NET451 เรียกใช้การทดสอบหน่วยได้ยาก

ฉันสามารถเรียกใช้คำสั่ง dnx test สำหรับทั้งการกำหนดเป้าหมาย DNX451 และ DNXCORE50 แต่ปัญหาคือ เนื่องจาก NET451 ไม่ใช่ DNX ฉันจึงไม่สามารถเรียกใช้ dnx test สำหรับการทดสอบได้ ฉันควรดำเนินการ xunit.console.exe เพื่อการทดสอบแทน น่าเสียดาย หากฉันรันคำสั่ง xunit.console.exe MyProject.Test.dll จะต้องคัดลอกไลบรารีแพ็กเกจที่ขึ้นต่อกันทั้งหมดไปยังไดเร็กทอรีเดียวกันกับ MyProject.Test.dll; ไม่เช่นนั้น xunit.console.exe จะไม่ทำงาน นั่นสมเหตุสมผลสำหรับฉันเพราะโครงการที่กำหนดเป้าหมายเป็น NET451 ควรสร้างขึ้นบน .csproj ไม่ใช่ .xproj

ฉันสงสัยว่าฉันทำแนวทางที่ถูกต้องหรือไม่ หากวิธีการของฉันใช้ได้ ฉันยังสงสัยว่ามีวิธีคัดลอกการขึ้นต่อกันทั้งหมดเหล่านั้นไปยังไดเร็กทอรีเดียวกันโดยอัตโนมัติหรือไม่ เวอร์ชัน xUnit.net ของฉันคือ 2.2.0-beta1-build3239

ไชโย


person justinyoo    schedule 27.03.2016    source แหล่งที่มา


คำตอบ (1)


ฉันฝากปัญหาไว้ที่ https://github.com/xunit/xunit/issues/809และได้รับคำตอบจากพวกเขา

xunit.console.exe ไม่ได้ออกแบบมาให้ใช้งานเช่นนี้ แบรด วิลสัน หนึ่งในผู้เขียนไลบรารี xUnit.net ชี้แจงเรื่องดังกล่าวและแนะนำให้ใช้ .xproj สำหรับการกำหนดเป้าหมาย DNX เท่านั้น

person justinyoo    schedule 29.03.2016