草庐IT

unit-testing

全部标签

c# - 如何从主机类型为 ("Moles"的测试中读取 UnitTest 项目的 App.Config)

我有以下测试:[TestClass]publicclassGeneralTest{[TestMethod]publicvoidVerifyAppDomainHasConfigurationSettings(){stringvalue=ConfigurationManager.AppSettings["TestValue"];Assert.IsFalse(String.IsNullOrEmpty(value),"NoApp.Configfound.");}[TestMethod][HostType("Moles")]publicvoidVerifyAppDomainHasConfigur

c# - 如何生成良好的浮点逻辑代码覆盖率?

我正在手工编写新代码。我想确保我不遗余力。除了指定代码契约来指导Pex使其在数字密集型代码中产生良好的覆盖率之外,我还能做些什么吗?尝试搜索http://research.microsoft.com/en-us/projects/pex/pexconcepts.pdf用于关键字“float”以获取一些背景信息。Arithmeticconstraintsoverfloatingpointnumbersareapproximatedbyatranslationtorationalnumbers,andheuristicsearchtechniquesareusedoutsideofZ3to

c# - 从单元测试生成文档

我们有machinespecifications我们有specflow.Specflow将文本描述转化为单元测试。但是是否有任何工具可以使用NUnitfixture并创建类似于Specflow输入的文本描述?基本上与specflow正在做的事情相反。我准备调整关于夹具名称和测试方法名称的单元测试格式。但我宁愿不使用任何super花哨的语法,如机器规范,而只是使用普通的NUnit测试装置。原因是测试很重要并且需要重构等。文本格式不像单元测试那样重构友好。例如:[TestFixture]classGiven_Four{privateCalculatorc;[SetUp]publicvoid

c# - 如何为依赖于 DbEntityEntry 的对象创建单元测试

我有以下辅助方法,它从DbEntityValidationException中提取验证消息。我们需要这个,因为默认情况下验证的细节不会添加到异常中。publicstaticstringLogMessageDbEntityValidationException(DbEntityValidationExceptionex){StringBuildererror=newStringBuilder();error.AppendLine("ValidationErrordetailsforDbEntityValidationExceptionthrow:");foreach(varvalidat

c# - 单元测试 Windows.Web.Http HttpClient 与模拟 IHttpFilter 和 IHttpContent,MockedHttpFilter 抛出 System.InvalidCastException

我有一个依赖于Windows.Web.Http(Windows10UAP应用程序)中的HttpClient的类。我想进行单元测试,因此我需要“模拟”HttpClient来设置Get-Call应该返回的内容。我开始使用HttpClient使用手写模拟IHttpFilter和IHttpContent进行“简单”单元测试。它没有按预期工作,我在Test-Explorer中收到InvalidCastException。单元测试看起来像:[TestMethod]publicasyncTaskTestMockedHttpFilter(){MockedHttpContentmockedContent

c# - 使用 Task.Factory.StartNew().ContinueWith() 的单元测试代码

所以我有一些代码Task.Factory.StartNew(()=>this.listener.Start()).ContinueWith((task)=>{if(task.IsCompleted){this.status=WorkerStatus.Started;this.RaiseStatusChanged();this.LogInformationMessage("WorkerStarted.");}});当我测试时,我正在模拟所有依赖对象(namleythis.listener.Start())。问题是测试在调用ContinueWith之前完成执行。当我调试时,由于我单步执行代

c# - 我如何获得 Resharper 中止测试的原因?

我正在使用Resharper9.2和NUnit2.6.4以及大约120个单元测试。有时,当我开始运行测试时,resharper会停止随机测试并将其状态设置为已中止并跳过其他测试。这非常不方便,因为我已经手动运行了其余的测试。是否有任何方法可以获取中止原因、一些resharper测试运行日志或NUnit中的某些内容来帮助解决我的问题?我还尝试使用nativeNUnit运行程序,但它有时会抛出不包含任何有用信息的异常(一些远程处理异常,但没有任何用处)我尝试设置“最多并行运行1个程序集”和“为每个程序集使用单独的AppDomain进行测试”,但没有帮助。UPD我在Debug模式下重现了这个

c# - 什么是好的、免费的 C# 单元测试覆盖工具?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion我正在寻找一种可以针对我的代码库运行的工具,以确定我编写的NUnit测试涵盖了我的代码的哪些区域。我将不胜感激任何建议,并在需要时提供示例用法。谢谢!

c# - 如何使用 Moq 从 Repository 中正确伪造 IQueryable<T>?

我有一个类在其构造函数中采用IRepository,如下所示......publicclassUserService{publicIRepository_repo{get;set;}publicUserService(IRepositoryrepo=null){_repo=repo??newUserRepository();}并且有一个看起来像这样的方法......publicboolIsUserActive(emailstring){//Themethodactuallydoesmorebuttokeepitsimpleletsimagine//itdoesthisUseruser=

c# - 使用数据访问层进行单元测试

使用LINQtoSQLDAL编写单元测试的好方法是什么?目前我正在做一些数据库测试,需要创建访问数据库的辅助方法,但我不想在我的主存储库中使用这些方法。所以我有两份DAL,一份在我的主项目中,一份在测试项目中。如果我为数据层创建一个单独的项目,是否更容易管理这些东西?我不确定哪种方法更好。如果我确实创建了一个数据层项目,我是否也会将我的所有存储库移至该项目?我不确定如何正确设置图层。谢谢 最佳答案 我会使用VisualStudio杂志2009年9月题为“消除测试驱动开发中的数据库依赖性”的文章中概述的存储库模式。自从我阅读这篇文章并