我正在使用NUnit(3.8.1)和Resharper(2018.2.3),如下所示:private static IEnumerable<TestCaseData> GetTests(){yield return T("foo.bA..r@gmail.com", "foobar@gmail.com");yield return T("foo.bA..r@example.com", "foo.ba..r@example.com");yield return T("user.name+tag+sorting@example.com", "user.name@example.com");yield return T("admin@mailserver1", "admin@mailserver1");yield return T("aaaafoo.bA..r@gmail.c...
我一直在努力清理项目单元和集成测试的命名和组织惯例.我们正在使用C#,NUnit,Visual Studio和Resharper. 似乎如果单元测试组织有一个最佳实践,那么测试类和命名空间的布局和命名应该与被测代码的布局和命名相同.因此,文件结构也将被复制. 拥有一个可以自动执行并帮助重构代码以符合这些约定的工具不是很好吗?这样的工具是否存在? 例如,Resharper很容易识别OrderTest是Order类的测试夹具.然后,它可以确保Order类存在并且它位于同一...
我在MVVM中看过一些关于单元测试视图模型的文章,以及测试本身如何成为视图模型的消费者,测试viewModel和model的功能.但是,我想知道如何测试视图(UI)以确保它们正确连接到我的视图模型.我不想编写一个测试,例如,按下按钮以确保将某些内容写入数据库,因为这有效地测试了我的VM,我已经完成了. 例如,我希望能够编写测试以确保按钮连接到特定命令.因此,阻止任何人进入并删除按钮的命令,使其不再起作用. 这可能吗?谢谢.解决方法:但是如果...
在提交之前,我更喜欢在我的C#解决方案中运行所有百项单元测试,因为它们只需要几分钟就可以运行.但是,如果我已经运行它们,一切都很好,然后我决定在我的解决方案中组织using指令,是否真的有必要重新运行单元测试?我有一个宏,它遍历解决方案中的所有文件,并在每个文件上运行Visual Studio的“删除和排序”命令.根据我的理解,只要所有项目在使用指令后仍然可以改变,那么在运行时也应该没问题.这是正确的想法吗?解决方法:嗯,这在一定程...
我正在使用ScriptSharp创建一个RIA应用程序.除了一些古怪的东西之外还可 然而,使用Firebug查找和修复问题并不是很方便. 由于scriptsharp也提供了一个Dll,我希望使用一个单独的测试项目使用Nunit来测试我的代码的某些部分. 出现的问题是生成的dll引用了mscorlib 0.7,导致与测试项目中的mscorlib 4冲突. 一个简单的解决方案是创建第二个普通的C#项目并复制代码文件.但维护2个具有相同代码库的项目…… 好奇,如果有另一种方法来做到这...
我正在编写单元测试用例.我正在尝试为此方法编写单元测试但显示错误.如何在mvc3框架和rhino mock中对这个方法进行单元测试.public ActionResult UnderConstruction(){Response.StatusCode = (int)HttpStatusCode.TemporaryRedirect;ErrorModel model = new ErrorModel(){ErrorMessage = "This page is still under construction; please check back later.",Title = "Under Construction"};return View("Error", model);}解决方法:...
我有一个应用程序,其中问题域由高度相关的域对象表示.我已经将域拆分为一些聚合根对象,这有助于对模型施加顺序,但是为单元测试安排前提条件非常困难,因为创建这些聚合根的实例需要创建大量引用的支持对象. 我想编写可重复的,独立的单元测试来运行应用程序而不需要外部依赖(理想情况下不需要编写大量代码). 我认为这些是我的选择.任何偏好或其他建议? >编写构建脚本,设置项目数据库并将已知数据插入其中,然后执行单元测试.这是我最...
我有一个小行李图标,当鼠标悬停在图标上时,会显示工具提示文本.我想通过在Visual Studio中编写C#代码来测试它. 以下是html中行李图标的显示方式:<div class="icon_png information icon_baggageyes" title="1 piece included in this fare."></div>这是我的代码来测试工具提示:Actions a = new Actions(driver); IWebElement tooTipObject = driver.FindElement(By.XPath("//div[@class='icon_png information icon_baggageyes']...
我目前正在使用asp.net与paypal集成.我看过论坛中的其他教程,但似乎已经过时了. Paypal今天有一个新的用户界面,这就是我遇到一些困难的原因.我已经注册了developer.paypal.com并在沙盒帐户中创建了一个商业类型和个人类型帐户.现在这是我的代码string Server_URL = "https://www.paypal.com/ph/cgi-bin/webscr?";//Assigning Cmd Path as Statically to Parameter string cmd = "_xclick";//Assigning business Id as Statically t...
所以我有一个控制器将json返回给我需要测试的视图.我已经尝试使用具有动态数据类型的反射来访问列表的子属性但我仍然得到类似于“无法投射”错误的内容.基本上我在列表中有一个列表,我想访问并验证有关但我无法访问它.有没有人在MVC4之前测试过json从他们的控制器返回并有建议? 码:// arrangevar repositoryMock = new Mock<IEdwConsoleRepository>();var date = -1;var fromDate = DateTime.Today.AddDays(date);EtlTableHistor...
所以我一直在研究这个问题但我无法找到解决问题的方法 我有一个MVC4 / Web API应用程序,我正在使用AttributeRouting 3.5.6 我的应用运行正常. 我能够使用以下响应对Web API路由进行单元测试 AttributeRouting not working with HttpConfiguration object for writing Integration tests 我现在要做的是单元测试我的MVC4路线,但我还没有找到办法 我发现了以下问题,我想知道是否有解决方法 https://github.com/mccalltd/AttributeRou...
我已经尝试了these two教程和我自己的MSpec项目,但我每次都收到错误“文件中没有找到测试”.我也看了this SO solution.我确保我的课程是公开的. 我会发布代码但我确实尝试过复制并粘贴上面链接中的确切代码而没有运气. VS2012 / Resharper 8.1 / Mspec通过NuGet添加.两个库,一个是要测试的类,另一个是测试. 我究竟做错了什么?解决方法:请确保ReSharper成功加载MSpec插件.您可以在ReSharper / Options / General / Plugins中看到加...
我的队友现在已经理解了(!?)集成测试和单元测试之间的区别.现在,在我们的项目中,为每个组件建立了一个测试组件. 目前,集成测试没有像SpecFlow或Cucumber这样的特殊框架.它们是普通(和长)NUnit测试方法,其中来自不同组件的几个类一起测试. 现在的计划是使用“单元测试”和“集成测试”按属性(C#)对测试进行分类,以便NUnit可以在必要时过滤相应的测试. 是否适合将集成测试和单元测试混合在同一个组件中,还是应该总是在不同的组件中...
我有一个web api,我正在暴露一个端点,如下所示:api/Holiday?name={name}这是web api的控制器get方法:public IQueryable<Holiday> GetHolidayByName(string name) {return db.Holiday.Where(n => string.Equals(n.Name, name)); }如何为此检查单元/集成测试以检查名称是否相等?我可以检查结果是不是null然而有点困惑我怎么能检查名称是否相等:[TestMethod] public void GetHoliday_GetHolidayByName() {// ArrangeHolidaysContr...
我传统上使用的是Eclipse / Java,但目前正在使用Visual Studio 2015 / C#,所以我希望我有一些错误的配置.我正在开发一个ASP.NET核心应用程序,并且我已经创建了许多单元测试(~20)并且正在使用xunit测试运行器运行. 当使用dotnet测试运行时,性能是我所期望的.编译应用程序时可能会有一两秒或两个延迟,然后立即启动测试(所有测试一旦启动就会在不到一秒的时间内运行). 但是,当使用测试资源管理器窗口通过VS2015运行时,在第一次测试开始...