หมายเหตุ: คำตอบดั้งเดิมด้านล่างควรใช้กับ Visual Studio รุ่นใดก็ได้ผ่าน Visual Studio 2012 Visual Studio 2013 ไม่ปรากฏว่ามีหน้าต่างผลลัพธ์การทดสอบอีกต่อไป หากคุณต้องการเอาต์พุตเฉพาะการทดสอบคุณสามารถใช้คำแนะนำของ @ Stretch ในTrace.Write()
การเขียนเอาต์พุตไปที่หน้าต่างเอาต์พุต
Console.Write
วิธีการไม่ได้เขียนถึง "คอนโซล" - มันเขียนจดหมายไปหาสิ่งที่จะขึ้นไปติดยาเสพติดที่จับออกมาตรฐานสำหรับกระบวนการทำงาน ในทำนองเดียวกันConsole.Read
อ่านอินพุตจากสิ่งที่เชื่อมต่อกับอินพุตมาตรฐาน
เมื่อคุณเรียกใช้การทดสอบหน่วยผ่าน Visual Studio 2010 เอาต์พุตมาตรฐานจะถูกเปลี่ยนเส้นทางโดยชุดควบคุมการทดสอบและเก็บไว้เป็นส่วนหนึ่งของเอาต์พุตการทดสอบ คุณสามารถดูได้โดยคลิกขวาที่หน้าต่างผลการทดสอบและเพิ่มคอลัมน์ชื่อ "เอาท์พุท (StdOut)" ไปยังจอแสดงผล สิ่งนี้จะแสดงสิ่งที่เขียนไปยังเอาต์พุตมาตรฐาน
คุณสามารถเปิดหน้าต่างคอนโซลด้วยตนเองโดยใช้P / Invokeเป็นsinni800 กล่าวว่า จากการอ่านAllocConsole
เอกสารปรากฏว่าฟังก์ชั่นจะรีเซ็ตstdin
และstdout
จัดการให้ชี้ไปที่หน้าต่างคอนโซลใหม่ (ฉันไม่แน่ใจ 100% เกี่ยวกับเรื่องนี้ดูเหมือนฉันจะผิดถ้าฉันได้เปลี่ยนเส้นทางstdout
ให้ Windows ขโมยไปจากฉันแล้ว แต่ฉันยังไม่ได้ลอง)
โดยทั่วไปแล้วฉันคิดว่ามันเป็นความคิดที่ไม่ดี หากสิ่งที่คุณต้องการใช้คอนโซลสำหรับคือการถ่ายโอนข้อมูลเพิ่มเติมเกี่ยวกับการทดสอบหน่วยของคุณผลลัพธ์จะมีสำหรับคุณ ใช้ต่อไปConsole.WriteLine
อย่างที่เป็นอยู่และตรวจสอบผลลัพธ์ที่ได้ในหน้าต่างผลการทดสอบเมื่อเสร็จสิ้น