คำถามติดแท็ก nunit

13
เราจะทำให้การทดสอบหน่วยทำงานอย่างรวดเร็วได้อย่างไร
เรามาถึงจุดที่โครงการของเราซึ่งเรามีการทดสอบเกือบหนึ่งพันครั้งและผู้คนหยุดทำงานก่อนที่จะทำการเช็คอินเพราะมันใช้เวลานานมาก อย่างดีที่สุดพวกเขาเรียกใช้การทดสอบที่เกี่ยวข้องกับชิ้นส่วนของรหัสที่พวกเขาเปลี่ยนแปลงและที่เลวร้ายที่สุดพวกเขาเพียงตรวจสอบโดยไม่ต้องทดสอบ ฉันเชื่อว่าปัญหานี้เกิดจากความจริงที่ว่าโซลูชันเพิ่มขึ้นถึง 120 โครงการ (เรามักจะทำโครงการขนาดเล็กมากและนี่เป็นเพียงครั้งที่สองที่เราทำ TDD อย่างถูกต้อง) และเวลาสร้าง + ทดสอบเพิ่มขึ้นประมาณสองถึงสามนาที บนเครื่องที่น้อยกว่า เราจะลดระยะเวลาในการทดสอบได้อย่างไร มีเทคนิคไหม? แกล้งทำมากขึ้น? แกล้งทำน้อยลงหรือไม่ บางทีการทดสอบการรวมที่ใหญ่กว่านั้นไม่ควรทำงานโดยอัตโนมัติเมื่อทำการทดสอบทั้งหมดใช่ไหม แก้ไข:เพื่อเป็นการตอบสนองต่อคำตอบหลาย ๆ คำเราใช้ CI และ build server อยู่แล้วนี่คือวิธีที่ฉันรู้ว่าการทดสอบล้มเหลว ปัญหา (จริง ๆ แล้วเป็นอาการ) คือเราได้รับข้อความเกี่ยวกับงานสร้างที่ล้มเหลว ใช้การทดสอบบางส่วนเป็นสิ่งที่คนส่วนใหญ่ทำ แต่ไม่ใช่ทั้งหมด และเกี่ยวกับการทดสอบพวกเขาทำได้ค่อนข้างดีพวกเขาใช้ของปลอมสำหรับทุกสิ่งและไม่มี IO เลย
40 c#  unit-testing  tdd  nunit 

4
กรอบการทดสอบหน่วยที่ดีที่สุดสำหรับ. NET คืออะไรและเพราะเหตุใด [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้จะเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา สำหรับฉันดูเหมือนว่าทุกคนใช้NUnitโดยไม่คำนึงถึงตัวเลือกอื่น ๆ ฉันคิดว่าเป็นเพราะ: ทุกคนคุ้นเคยกับมันอยู่แล้วดังนั้นพวกเขาจึงไม่ต้องเรียนรู้ API ใหม่ ถูกตั้งค่าไว้แล้วด้วยเซิร์ฟเวอร์การรวมต่อเนื่องเพื่อทำงานกับ NUnit ฉันผิดเกี่ยวกับเรื่องนี้หรือไม่? ฉันตัดสินใจใช้xUnitกับหนึ่งในโปรเจคของฉันเมื่อเร็ว ๆ นี้และฉันก็ชอบ มันทำให้ฉันมีความรู้สึกมากขึ้นและแนวคิดดูเหมือนจะเป็นก้าวที่ชัดเจนจาก NUnit ฉันต้องการรับฟังความคิดเห็นเกี่ยวกับกรอบงานที่ดีที่สุดจริง ๆ โดยไม่คำนึงถึงการเรียนรู้หรือกำหนดค่าการทดสอบอัตโนมัติของคุณใหม่

5
วิธีจัดโครงสร้างหน่วยทดสอบสำหรับแอป GUI โดยใช้ C # และ NUnit
ฉันถูกขอให้ทำโครงการขนาดเล็กเพื่อจัดหาแอพพลิเคชั่นที่เรียบง่ายให้กับลูกค้าของเรา โดยปกติแล้วฉันจะทำงานกับรหัสแบ็คเอนด์ที่ฉันต้องทำการทดสอบทั้งหมดและฉันยังไม่ได้มีความสุขที่น่าสงสัยในการเขียนการทดสอบสำหรับ GUI ดังนั้นจึงไม่ค่อยชัดเจนสำหรับฉันที่จะตั้งค่า รหัสการทดสอบและเครื่องมือสำหรับ EXE สัญชาตญาณแรกของฉันคือการรวมการทดสอบด้วยรหัสแอปพลิเคชัน แต่ต้องมีการจัดหาการอ้างอิงเฉพาะสำหรับการทดสอบจำนวนมากซึ่งฉันได้รับคำสั่งให้ไม่ส่งมอบให้กับลูกค้าโดยเฉพาะ ฉันยังไม่สามารถบีบเงินสดเพื่อใช้เป็นเครื่องมือทดสอบที่สร้างขึ้นมาได้ดังนั้นฉันต้องใช้เครื่องมือที่มีอยู่ในมือ ( StoryQ , RhinoMocksและNUnit) ซึ่งควรเกินพอที่จะทดสอบพฤติกรรมของแอพ GUI อย่างง่าย ดังนั้นเท่าที่ฉันเห็นนี่ทำให้ฉันพยายามสร้างสมดุลที่ดีระหว่างการออกแบบให้เรียบง่ายหรือใช้วิศวกรรมมากเกินไปเพื่อการทดสอบ ดูเหมือนว่าฉันกำลังสร้างแอปด้วยตรรกะทางธุรกิจในห้องสมุดแยกต่างหากและทดสอบกับห้องสมุดอย่างที่ฉันมักจะทำหรือค้นหากลไกอื่น ๆ เพื่อให้ฉันสามารถดำเนินการได้โดยไม่แยกโมดูลเพิ่มเติมที่การออกแบบแอปพลิเคชันไม่ ต้องการจริงๆ แก้ไข: โปรดทราบว่าคำถามนี้เกี่ยวกับวิธีการจัดโครงสร้างความสัมพันธ์ระหว่าง NUnit และปฏิบัติการของฉัน - ซึ่งต่างกับ DLL - และไม่เกี่ยวกับวิธีแยกงานนำเสนอและตรรกะทางธุรกิจ / แก้ไข ดังนั้นคำถามของฉันคือ: มีวิธีเฉพาะ / แนะนำสำหรับการกำหนดค่าแอปพลิเคชัน GUI อย่างง่ายพร้อมการทดสอบหน่วยเพื่อให้ฉันตรวจสอบสถานะและพฤติกรรมอย่างเพียงพอโดยใช้เครื่องมือที่ฉันมีอยู่ในมือและไม่ต้องใช้วิธีการทางวิศวกรรมมากเกินไป? ฉันพลาดพื้นฐานบางอย่างเกี่ยวกับวิธีที่ NUnit ควรเรียกใช้ / กำหนดค่าเมื่อทำการทดสอบ EXE (ตรงข้ามกับ DLL) คุณสามารถให้หรือชี้ให้ฉันในทิศทางของตัวอย่างของการบรรลุทั้งหมดนี้ได้อย่างไร ฉันรู้ว่าอาจมีหลายวิธีในการทำเช่นนี้ฉันจึงมองหาแนวทางการใช้งานเฉพาะตามประสบการณ์ของคุณ
16 c#  testing  gui  nunit 

3
NUnit สำหรับ C # เปรียบเทียบกับเครื่องมือทดสอบหน่วยที่รวมเข้ากับ Visual Studio อย่างไร
ฉันต้องทำงานเป็นทีมเพื่อพัฒนาแอปพลิเคชั่นเดสก์ท็อประดับกลางที่พัฒนาโดยใช้ C # .NET ก่อนหน้านี้ฉันยังไม่ได้ใช้การทดสอบหน่วยและการพัฒนาขับเคลื่อนทดสอบ ฉันทราบว่ามีเครื่องมือและกรอบงานมากมายสำหรับแอปพลิเคชันการทดสอบหน่วย C # ณ ตอนนี้ฉันได้รับทราบถึง Nunit และเครื่องมือทดสอบหน่วยที่รวมเข้ากับ Visual Studio ฉันอยากรู้ว่าทั้งสองเปรียบเทียบกันอย่างไร

3
ฉันจะวาดเส้นแบ่งระหว่างการทดสอบหน่วยและการทดสอบการรวมได้อย่างไร พวกเขาควรจะแยกจากกัน?
ฉันมีกรอบ MVC ขนาดเล็กที่ฉันทำงานอยู่ มันคือฐานรหัสไม่ใช่เรื่องใหญ่ แต่มันก็ไม่ได้มีแค่สองสามชั้น ในที่สุดฉันก็ตัดสินใจที่จะกระโดดและเริ่มเขียนแบบทดสอบ (ใช่ฉันรู้ว่าฉันควรจะทำอย่างนั้นมาตลอด แต่มันก็ API ไม่เสถียรอย่างยิ่งจนถึงตอนนี้) อย่างไรก็ตามแผนของฉันคือทำให้ง่ายมากในการทดสอบรวมถึงการทดสอบการรวม ตัวอย่างการทดสอบการรวมตัวจะเป็นไปตามบรรทัดเหล่านี้: วัตถุคำขอ HTTP ปลอม -> กรอบงาน MVC -> วัตถุตอบกลับ HTTP -> ตรวจสอบว่าการตอบสนองนั้นถูกต้อง เพราะนี่เป็นสิ่งที่ทำได้โดยไม่ต้องใช้เครื่องมือพิเศษ (เบราว์เซอร์อัตโนมัติเป็นต้น) ฉันสามารถทำได้ด้วยกรอบการทดสอบตามปกติ (ฉันใช้ NUnit) ตอนนี้คำถามใหญ่ ฉันจะวาดเส้นแบ่งระหว่างการทดสอบหน่วยและการทดสอบการรวมได้ที่ไหน ฉันควรทดสอบทีละชั้น (มากที่สุดเท่าที่จะทำได้) ด้วยการทดสอบหน่วย? ควรวางการทดสอบการรวมในโครงการทดสอบเดียวกันกับโครงการทดสอบหน่วยของฉันหรือไม่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.