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

NUnit เป็นกรอบการทดสอบหน่วยโอเพ่นซอร์สสำหรับ. NET และ Silverlight ที่เขียนด้วยภาษา C # มันทำหน้าที่จุดประสงค์เดียวกับที่ JUnit หรือ TestNG ทำในโลก Java และเป็นหนึ่งในหลาย ๆ คนในตระกูล xUnit

7
NUnit vs. MbUnit กับ MSTest vs. xUnit.net [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา มีกรอบ unittesting ค่อนข้างมากสำหรับ NET. ฉันพบการเปรียบเทียบคุณสมบัติเล็กน้อยนี้: http://xunit.github.io/docs/comparisons.html ตอนนี้ฉันจะเลือกสิ่งที่ดีที่สุดสำหรับเรา แต่อย่างไร มันสำคัญไหม อันไหนเป็นข้อพิสูจน์ในอนาคตมากที่สุดและมีแรงผลักดันที่ดีอยู่ข้างหลัง? ฉันควรสนใจเกี่ยวกับคุณสมบัติหรือไม่ ในขณะที่ xUnit ดูเหมือนจะทันสมัยที่สุดและออกแบบมาโดยเฉพาะสำหรับ. NET แต่ NUnit ก็ดูเหมือนจะเป็นที่ยอมรับอย่างกว้างขวาง MSTest ถูกรวมเข้ากับ Visual Studio อีกครั้ง ...

7
การคืนค่าที่แตกต่างกันเป็นครั้งแรกและครั้งที่สองด้วย Moq
ฉันมีแบบทดสอบนี้: [TestCase("~/page/myaction")] public void Page_With_Custom_Action(string path) { // Arrange var pathData = new Mock<IPathData>(); var pageModel = new Mock<IPageModel>(); var repository = new Mock<IPageRepository>(); var mapper = new Mock<IControllerMapper>(); var container = new Mock<IContainer>(); container.Setup(x => x.GetInstance<IPageRepository>()).Returns(repository.Object); repository.Setup(x => x.GetPageByUrl<IPageModel>(path)).Returns(() => pageModel.Object); pathData.Setup(x => x.Action).Returns("myaction"); pathData.Setup(x => x.Controller).Returns("page"); var resolver …
262 c#  unit-testing  nunit  moq 

19
โครงการทดสอบ NUnit กับ Visual Studio 2008 สำหรับการทดสอบหน่วย? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันจะเริ่มโครงการใหม่ในที่ทำงานและต้องการเข้าทดสอบหน่วย เราจะใช้ VS 2008, C # และ ASP.NET MVC ฉันกำลังมองหาการใช้ NUnit หรือโครงการทดสอบในตัวที่ VS2008 มี แต่ฉันเปิดให้ทำการค้นคว้าคำแนะนำอื่น ๆ ระบบหนึ่งดีกว่าระบบอื่นหรืออาจจะใช้ / เข้าใจง่ายกว่าระบบอื่นหรือไม่? ฉันกำลังมองหาการตั้งค่าโครงการนี้เป็น "แนวปฏิบัติที่ดีที่สุด" สำหรับความพยายามในการพัฒนาของเราในอนาคต ขอบคุณสำหรับความช่วยเหลือและคำแนะนำใด ๆ !!

7
ฉันจะใช้ Assert ได้อย่างไรแถวเพื่อยืนยันประเภทของข้อยกเว้น
ฉันจะใช้Assert.Throwsเพื่อยืนยันประเภทของข้อยกเว้นและข้อความจริงได้อย่างไร บางสิ่งเช่นนี้ Assert.Throws<Exception>( ()=>user.MakeUserActive()).WithMessage("Actual exception message") วิธีที่ฉันกำลังทดสอบจะส่งข้อความที่มีประเภทเดียวกันหลายข้อความพร้อมกับข้อความที่แตกต่างกันและฉันต้องการวิธีทดสอบว่าข้อความที่ถูกต้องนั้นถูกส่งออกไปแล้วแต่บริบท

5
การตรวจสอบพารามิเตอร์เฉพาะด้วย Moq
public void SubmitMessagesToQueue_OneMessage_SubmitSuccessfully() { var messageServiceClientMock = new Mock<IMessageServiceClient>(); var queueableMessage = CreateSingleQueueableMessage(); var message = queueableMessage[0]; var xml = QueueableMessageAsXml(queueableMessage); messageServiceClientMock.Setup(proxy => proxy.SubmitMessage(xml)).Verifiable(); //messageServiceClientMock.Setup(proxy => proxy.SubmitMessage(It.IsAny<XmlElement>())).Verifiable(); var serviceProxyFactoryStub = new Mock<IMessageServiceClientFactory>(); serviceProxyFactoryStub.Setup(proxyFactory => proxyFactory.CreateProxy()).Returns(essageServiceClientMock.Object); var loggerStub = new Mock<ILogger>(); var client = new MessageClient(serviceProxyFactoryStub.Object, loggerStub.Object); client.SubmitMessagesToQueue(new List<IMessageRequestDTO> {message}); //messageServiceClientMock.Verify(proxy …
170 c#  unit-testing  nunit  moq 

8
วิธีค้นหาพา ธ ของไฟล์แอปที่ใช้งานอยู่
ฉันพยายามจัดการข้อยกเว้นนี้ให้เสร็จ: if (ConfigurationManager.ConnectionStrings["ConnectionString"]==null) { string pathOfActiveConfigFile = ...? throw new ConfigurationErrorsException( "You either forgot to set the connection string, or " + "you're using a unit test framework that looks for "+ "the config file in strange places, update this file : " + pathOfActiveConfigFile); } ปัญหานี้ดูเหมือนจะเกิดขึ้นกับฉันเมื่อฉันใช้ nUnit เท่านั้น

8
วิธีการเรียกใช้การทดสอบ NUnit ใน Visual Studio 2017
ฉันเพิ่งติดตั้ง VS 2017 ฉันมีโครงการที่ใช้ NUnit สำหรับกรณีทดสอบ Ctrl+ R- Tไม่เรียกใช้การทดสอบอีกต่อไปและ Test Explorer ไม่พบกรณีทดสอบใด ๆ ที่ทำเครื่องหมายด้วยแอตทริบิวต์ TestCase มีวิธีในการทำให้ NUnit ทำงานอยู่หรืออัปเดตที่ฉันพบ ฉันติดตั้ง NUnit ใหม่จาก Nuget Package Manager เป็นเวอร์ชันล่าสุดโดยไม่มีการปรับปรุง

3
Test Explorer (VS) แสดง '<ไม่ทราบโครงการ>'
ทุกอย่างด้านล่างนี้สร้างขึ้นใน VS2019 โดยใช้. NET Framework 4.7 และ NUnit + NUnit3TestAdapter ฉันสร้างชุดประกอบชื่อว่า Exitus.Tests และเพิ่มการทดสอบหน่วยเล็กน้อย อย่างไรก็ตามทำกับปัญหาบางอย่างกับ Nuget ซึ่งฉันไม่สามารถแก้ไขได้ฉันทำโครงการอื่นชื่อ Exitus.UnitTests และลบไฟล์ที่เคยมีในโครงการเก่า (รวมถึงการเปลี่ยน namespace) ตอนนี้โครงการทดสอบใหม่แสดง op อย่างถูกต้องใน explorer แต่ยังมี "ผี" ของโครงการเก่าอยู่: หากฉันพยายามรันการทดสอบหน้าต่างเอาต์พุตจะแสดงข้อผิดพลาดต่อไปนี้: System.InvalidOperationException: ไม่พบ TestContainer ต่อไปนี้ 'C: \ Users \ xxx \ แหล่งที่มา \ Repositories \ Expire \ Exitus.Tests \ bin \ Debug \ …
157 c#  visual-studio  nunit 

5
ใช้วิธีการ NUnit Assert.Throws หรือแอตทริบิวต์ ExpectedException หรือไม่
ฉันได้ค้นพบว่าสิ่งเหล่านี้ดูเหมือนจะเป็นสองวิธีหลักในการทดสอบข้อยกเว้น: Assert.Throws&lt;Exception&gt;(()=&gt;MethodThatThrows()); [ExpectedException(typeof(Exception))] ข้อใดจะดีที่สุด ข้อเสนอหนึ่งมีข้อได้เปรียบเหนือสิ่งอื่นหรือไม่? หรือมันเป็นเพียงเรื่องของการตั้งค่าส่วนตัว?

22
การทดสอบหน่วย NUnit ไม่แสดงใน Test Explorer เมื่อติดตั้ง Test Adapter
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ ฉันได้ติดตั้ง NUnit Test Adapter สำหรับ VS2012 + 2013 เมื่อฉันติดตั้งครั้งแรกการทดสอบของอะแดปเตอร์ก็ปรากฏขึ้น แต่พวกเขาก็หยุดแสดงผลด้วยเหตุผลบางอย่างในวันนี้ หลังจากสร้างสร้างใหม่ทำความสะอาดเริ่มใหม่ไม่มีอะไรปรากฏใน Test Explorer ทำไมสิ่งนี้ถึงเกิดขึ้น ฉันใช้ VS2013 Ultimate
145 nunit 

9
เราจะรันวิธีทดสอบด้วยพารามิเตอร์หลายตัวใน MSTest ได้อย่างไร
NUnit มีคุณสมบัติที่เรียกว่าค่าเช่นด้านล่าง: [Test] public void MyTest( [Values(1,2,3)] int x, [Values("A","B")] string s) { // ... } ซึ่งหมายความว่าวิธีการทดสอบจะทำงานหกครั้ง: MyTest(1, "A") MyTest(1, "B") MyTest(2, "A") MyTest(2, "B") MyTest(3, "A") MyTest(3, "B") ตอนนี้เรากำลังใช้ MSTest แต่มีสิ่งใดเทียบเท่ากับสิ่งนี้เพื่อให้ฉันสามารถรันการทดสอบเดียวกันด้วยพารามิเตอร์หลายตัวได้หรือไม่ [TestMethod] public void Mytest() { // ... }

2
NUnit's Assert.Equals แสดงข้อยกเว้น "Assert.Equals ไม่ควรใช้ในการยืนยัน"
ฉันเพิ่งพยายามใช้วิธี Assert.Equals () เมื่อเขียนการทดสอบ NUnit ใหม่ เมื่อดำเนินการตามวิธีนี้จะแสดงAssertionExceptionข้อความว่า Assert.Equals should not be used for Assertions. นี่เป็นเรื่องที่ทำให้งงงวยเล็กน้อยในตอนแรก เกิดอะไรขึ้นที่นี่?
132 .net  nunit 

20
เปรียบเทียบความเท่าเทียมกันระหว่างสองวัตถุใน NUnit
ฉันพยายามยืนยันว่าวัตถุหนึ่ง "เท่ากับ" กับวัตถุอื่น อ็อบเจ็กต์เป็นเพียงอินสแตนซ์ของคลาสที่มีคุณสมบัติสาธารณะมากมาย มีวิธีง่ายๆในการให้ NUnit ยืนยันความเท่าเทียมกันตามคุณสมบัติหรือไม่? นี่เป็นวิธีแก้ปัญหาปัจจุบันของฉัน แต่ฉันคิดว่าอาจมีบางอย่างที่ดีกว่า: Assert.AreEqual(LeftObject.Property1, RightObject.Property1) Assert.AreEqual(LeftObject.Property2, RightObject.Property2) Assert.AreEqual(LeftObject.Property3, RightObject.Property3) ... Assert.AreEqual(LeftObject.PropertyN, RightObject.PropertyN) สิ่งที่ฉันต้องการจะเป็นไปในจิตวิญญาณเดียวกันกับ CollectionEquivalentConstraint โดยที่ NUnit ตรวจสอบว่าเนื้อหาของสองคอลเลคชันเหมือนกัน

5
'รอ' ทำงาน แต่เรียกงานผลลัพธ์ค้าง / หยุดชะงัก
ฉันมีการทดสอบสี่ครั้งต่อไปนี้และการทดสอบครั้งสุดท้ายแฮงค์เมื่อฉันเรียกใช้ ทำไมสิ่งนี้จึงเกิดขึ้น: [Test] public void CheckOnceResultTest() { Assert.IsTrue(CheckStatus().Result); } [Test] public async void CheckOnceAwaitTest() { Assert.IsTrue(await CheckStatus()); } [Test] public async void CheckStatusTwiceAwaitTest() { Assert.IsTrue(await CheckStatus()); Assert.IsTrue(await CheckStatus()); } [Test] public async void CheckStatusTwiceResultTest() { Assert.IsTrue(CheckStatus().Result); // This hangs Assert.IsTrue(await CheckStatus()); } private async Task&lt;bool&gt; CheckStatus() { var restClient = …
126 c#  nunit  task  deadlock  async-await 

4
NUnit กับ xUnit
Наэтотвопросестьответына กองมากเกินнарусском : Чтовыбрать: nUnit VS xUnit? อะไรคือความแตกต่างระหว่างNUnitและxUnit.net ? อะไรคือจุดสำคัญของการพัฒนาพวกเขาสองคนไม่ใช่แค่เรื่องเดียว? ฉันได้อ่านมาว่า xUnit กำลังพัฒนาโดยผู้คิดค้น NUnit: xUnit.net เป็นเครื่องมือทดสอบหน่วยสำหรับ. NET Framework เขียนโดย ผู้ประดิษฐ์ดั้งเดิมของ NUnit ในทางกลับกัน: NUnit เป็นเฟรมเวิร์กการทดสอบหน่วยสำหรับภาษา. Net ทั้งหมด .. รุ่นที่ใช้งานจริงเวอร์ชันปัจจุบัน 2.6 เป็นรุ่นหลักลำดับที่ 7 ของเครื่องมือทดสอบหน่วยที่ใช้ xUnitนี้ แล้วความจริงอยู่ที่ไหน?
121 c#  .net  nunit  xunit 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.