jjzjj

c# - 如何从我的代码运行 NUnit

我想使用NUnit在我的插件中运行单元测试,但它需要在我的应用程序的上下文中运行。为了解决这个问题,我尝试开发一个运行NUnit的插件,它会在应用程序的上下文中执行我的测试。我没有找到关于这个主题的具体文档,所以我在这里和那里挖掘了一段信息,并得出了以下代码(类似于我在StackOverflow中找到的代码):publicstaticvoidMain(){SimpleTestRunnerrunner=newSimpleTestRunner();TestPackagepackage=newTestPackage("Test");stringloc=Assembly.GetExecutin

c# - 如何设置 NUnit 来运行我的项目的单元测试?

我开始使用NUnit在.NET4.0上使用VisualStudio2010在C#中编写测试用例。我想使用NUnit来测试.dll(C#类库项目)的公共(public)函数。如何设置NUnit来处理我的项目?我应该将NUnit代码添加到同一个类库项目中进行测试,还是应该在同一个解决方案中为NUnit测试用例添加一个单独的项目?哪个是最佳做法?如果我需要为NUnit测试用例创建一个单独的项目,我应该将其设为类库项目还是可执行文件?如果我将其设为类库项目,我该如何运行它?如果我需要针对可执行文件而不是类库项目进行测试,流程和/或项目是否有任何更改? 最佳答案

c# - Moq 异步回调因多个参数而失败

如果这是我做错了什么,或者它是最小起订量或NUnit中的问题,我正在尝试锻炼。我正在调用一个soap端点,我的服务引用正在生成同步和异步方法。我正在调用的电话看起来像:publicasyncTaskDoThisAsync(idnameobjectmyobj,intid){awaitws.DoSomethingAsync(myobj,id);}我正在设置我的最小起订量以返回回调,因此我可以将调用Web服务时使用的参数进行交互。我的测试看起来像:varcallback=newidnameobject();wsMock.SetUp(w=>w.DoSomethingAsync(It.IsAny

c# - System.BadImageFormatException :Could not load file or assembly … incorrect format when trying to install service with installutil. 可执行文件

我知道我要问duplicate问题,但我的情况完全不同,我认为是因为当我使用程序的nunit工具进行单元测试时,在NUnit中会发生此错误”NewTest.test测试(TestFixtureSetUp):设置:System.BadImageFormatException:无法加载文件或程序集“AUTO_REPAIR,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。试图加载格式不正确的程序。”我想知道为什么这个工具会出现这个错误?我确信我在项目或任何测试用例中都没有错误。请帮帮我。这是这个错误的图片

c# - NUnit 加载 DLL 失败

尝试在VisualStudio中运行单元测试时收到以下错误消息:NUnitfailedtoloadw:\Repos\trading.tools\Trading.Tools.Test\bin\x64\Debug\Trading.Tools.Test.dll我正在使用VisualStudio社区2013NUnit适配器3.4.0.0NUnit3.4.1奇怪的是,我有另一个项目,它的设置方式与这个项目相同,而且工作正常。我还下载并安装了NUnit3.4.1。当我运行时nunit3-console.exeTrading.Tools.Test.dll一切正常。有什么想法吗?非常感谢康斯坦丁编辑#

c# - 断言两个 List<List<T>> 彼此等价

为了确保两个列表相同,在nunit中,我们可以使用CollectionAssert.AreEquivalent检查这两个列表是否包含相同的元素(顺序不重要)。但是如何检查两个List>是等价的吗?这个想法是,如果一个List具有与另一个相同的元素List(同样,顺序不重要)那么它们是相等的。 最佳答案 您必须遍历它们以确保它们是等价的,但有一些重要的快捷方式:如果它们实际上是同一个实例(并且在实际代码中经常出现这种情况),则ReferenceEquals(x,y)将返回true。否则不会。如果ReferenceEquals返回tru

c# - 我可以在 .NET 应用程序中临时覆盖 DNS 解析吗?

我有一些包装代码可以运行一组NUnit测试,扫描实时网站以获取特定响应代码。我想在不同的服务器上运行这些测试。手动运行时,我可以通过编辑Windows\System32\drivers中的/etc/hosts文件并将www.mysite.com临时设置为10.0.0.whatever来完成此操作有什么方法可以在.NET控制台应用程序中执行相同的操作-临时覆盖DNS记录或以某种方式拦截解析并返回不同的IP地址?编辑:这是为了测试网络场中的多台服务器。我有三台实时服务器,它们都认为是www.example.com。因为服务器使用HTTP主机header,所以我不能只对server1、ser

c# - NUnit测试调试

我正在开发一个几何库。有200多个单元测试。有一个特别顽固的测试会在我选择“全部运行”时失败,但当我单独运行该测试或对其使用调试器时测试通过。我相信这个问题是在我从visualstudio'13转移到'15版本时出现的。现在关于几何库的一些注意事项:对象是不可变的。测试之间没有共享对象。那么我的问题是:造成这种奇怪行为的可能原因是什么?编辑:[Test()]publicvoidPlane_IntersectionWithPlane_IdenticalPlane(){PlanetestPlane=newPlane(newDirection(Point.MakePointWithInche

c# - 测试 ASP.NET MVC View 模型

我正在使用Nunit和Moq来测试我的asp.netmvc解决方案。这是测试传递给View的模型是否是正确对象/集合的好方法吗?[Test]publicvoidStart_Page_Should_Display_Posts(){varposts=newList{newPost{Id=1},newPost{Id=2}};varmock=newMock();mock.Setup(x=>x.FindAll()).Returns(posts.AsQueryable());varcontroller=newPostsController(mock.Object);varresult=contro

c# - 如何断言是否使用 nunit 调用了方法

是否可以断言一个方法是否被调用?我正在测试以下方法,我想断言_tokenManager.GetToken()已被调用。我只想知道该方法是否已被调用,因为该方法没有返回值。我正在使用最小起订量。谢谢,代码片段publicvoidSubscribe(stringcode,stringemailAddress,stringcolumnKey){//Requestauthenticationtokenvartoken=_tokenManager.GetToken(code,false);if(!_tokenValidator.Validate(token)){//Tokenhasexpired