เรามีแอปพลิเคชั่นขนาดใหญ่ที่ประกอบด้วย
- เว็บเลเยอร์ - MVC
- ชั้นบริการ - เว็บ API
- เลเยอร์โดเมน
- DB Layer - รหัส EF 5 ก่อน
เราเขียนการทดสอบหน่วยหลายร้อยรายการเพื่อหลีกเลี่ยงปัญหาเพิ่มเติม ตอนนี้เราต้องการเขียนการทดสอบบูรณาการกับฐานข้อมูล
จนถึงตอนนี้เราใช้ xUnit สำหรับการทดสอบหน่วย แต่ฉันไม่แน่ใจว่าเราจะดำเนินต่อไปได้อย่างไรและมีคำถามบางอย่าง
- คุณแนะนำให้เขียนวิธีหนึ่งในการทดสอบการรวม "จากบนลงล่าง" หรือไม่ ดังนั้นการเขียนวิธีทดสอบที่ใช้การกระทำ MVC ผ่านทุกเลเยอร์และส่งผลกระทบต่อฐานข้อมูลหรือแยกออกเป็นส่วน ๆ เช่น Web - API, API - DB?
- ฉันค้นหา xUnit เกี่ยวกับ Fixtures แต่ไม่พบตัวอย่างการใช้ IUseFixture กับ Entity Framework
- เรากำลังใช้การโยกย้าย Code First ดังนั้นฉันคิดว่าการเริ่มต้นฐานข้อมูลจะเป็นเรื่องง่าย เนื่องจากไฟล์การโยกย้ายทั้งหมดอยู่ในมือของเรา แต่ฉันจะใช้มันเพื่อสร้างฐานข้อมูลทดสอบได้อย่างไร
- ทีมของเราประกอบด้วยนักพัฒนามากกว่าหนึ่งคน ดังนั้นการแยกพวกเขาแต่ละคนออกจึงเป็นสิ่งสำคัญ ฉันสามารถใช้เซิร์ฟเวอร์ db การพัฒนาหรือ db ท้องถิ่นสำหรับสิ่งนี้ แต่อีกครั้ง ฉันไม่สามารถหาวิธีเปลี่ยนสตริงการเชื่อมต่อตามผู้ใช้ได้
ยังไม่ใช่ตอนนี้ แต่ในอนาคตอันใกล้นี้ เราจะทำการทดสอบเหล่านี้กับ TFS 2012 builds