草庐IT

unit-testing

全部标签

C#,NUnit 在循环中断言

我有一项学校作业,我需要创建一种数据驱动的NUnit测试风格。使用下面的代码,我能够从数据库中获取数据,但每次“断言”调用失败时,测试都会停止。有什么方法可以将循环的结果实际显示为六个不同的测试(考虑到我的数据库中有六行)?namespaceTestClasses{[TestFixture]publicclassTestingClass:ConnectionClass{privateProductManagementpm;[TestFixtureSetUp]publicvoidCreateTestClass(){pm=newProductManagement();}[TestCase]

c# - 我如何访问 asp.net 5 中的内部结构

在asp.net5之前,我会将“internalsVisibleTo(some.namespace.name)”添加到AssemblyInfo.cs-但我的WebApi项目中不再有assemblyInfo.cs。如何将WebAPI项目中的内部结构公开到我的unitTest项目? 最佳答案 您可以添加自己的AssemblyInfo.cs文件。只需添加一个类文件,将其命名为AssemblyInfo.cs(或任何名称),并用以下行替换其所有代码:[assembly:System.Runtime.CompilerServices.Inter

c# - 我如何在我的单元测试中模拟 Controller 上下文,以便我对字符串函数的部分 View 起作用?

我正在尝试为我的Controller创建一个单元测试,但我正在测试的操作使用部分View来字符串函数,它不想在我的测试中工作。privatestringRenderPartialViewToString(stringviewName,objectmodel=null){if(string.IsNullOrEmpty(viewName))viewName=ControllerContext.RouteData.GetRequiredString("action");ViewData.Model=model;using(System.IO.StringWritersw=newSystem.

c# - 努力单元测试 Entity Framework 6.1.3 DB-first

我在使用Effort框架(版本1.1.4)对我的DB层进行单元测试时遇到问题。我有一个使用EntityFramework6.1.3的DB层,并且模型是使用数据库优先方法创建的,因此有一个描述模型的*.edmx文件。我已经创建了一个分部类来公开单元测试使用的附加构造函数,如下所示:publicpartialclassEntities{publicEntities(DbConnectionconnection):base(connection,true){}}简单的单元测试看起来像这样:privateEntitiesCreateContext(){//varconnectionString

c# - Moq:Lambda 表达式作为参数并在返回中评估它们

在我的单元测试中,我希望能够在接受lambda表达式的工作单元中最小化存储库的“查找”功能。例如:publicvirtualIQueryableFind(Expression>predicate){//FindOPS}我在我的单元测试中创建了测试列表来表示我的dbSet(我还省略了很多抽象以使这个问题更简单):[TestMethod]publicvoidFindTest(){varmockUnitOfWork=newMock();vartestList=newList{//Testvalues}//HereiswhereIamstuck:mockUnitOfWork.Setup(uow

c# - 在 Visual Studio 2013 中使用 HttpClient 进行单元测试/集成测试 Web API

我很难尝试使用VisualStudio2013测试我的APIController。我的一个解决方案有一个WebAPI项目和一个测试项目。在我的测试项目中,我有一个单元测试:[TestMethod]publicvoidGetProduct(){HttpConfigurationconfig=newHttpConfiguration();HttpServer_server=newHttpServer(config);varclient=newHttpClient(_server);varrequest=newHttpRequestMessage{RequestUri=newUri("htt

c# - 将参数传递给 PrivateObject 方法

这个问题在这里已经有了答案:HowtopassaparameterasareferencewithMethodInfo.Invoke(2个答案)关闭8年前。我正在尝试对私有(private)方法进行单元测试。我在下面看到了这个question的例子Classtarget=newClass();PrivateObjectobj=newPrivateObject(target);varretVal=obj.Invoke("PrivateMethod");Assert.AreEqual(retVal);我的私有(private)方法有2个引用参数。如何通过它们?

c# - 在 Specflow 中,我可以将一个测试作为另一个步骤运行吗?

长话短说;如何创建调用另一个测试作为第一步的specflow测试?GivenIalreadyhaveonespecflowtestAndIwanttorunanothertestthatgoesdeeperthanthefirsttestThenIcreateasecondtestthatrunsthefirsttestasitsfirststepAndIaddadditionalstepstotestthedeeperfunctionality抱歉,这里有点specflow幽默。例如,我有一个已经创建销售的测试:GivenIwanttocreateasalesorderAndIope

c# - 单元测试返回 void 的方法

想在下面的类中对一个方法进行单元测试publicclassDeviceAuthorisationService:IDeviceAuthorisationService{privateDeviceDetailsDTOdeviceDetailsDTO=null;privateIDeviceAuthorisationRepositiorydeviceAuthorisationRepositiory;publicDeviceAuthorisationService(IDeviceAuthorisationRepositioryServiceparamDeviceAuthorisationRep

C# : How does this work : Unit myUnit = 5;

我刚刚注意到您可以在C#中执行此操作:UnitmyUnit=5;不必这样做:UnitmyUnit=newUnit(5);有谁知道我如何使用自己的结构实现这一目标?我查看了带有反射器的Unit结构并注意到正在使用TypeConverter属性,但是在我为我的结构创建自定义TypeConverter之后我仍然无法让编译器允许这种方便的语法。 最佳答案 您需要提供一个从int到Unit的隐式转换运算符,如下所示:publicstructUnit{//theconversionoperator...publicstaticimplicito