草庐IT

unit-testing

全部标签

c# - 为什么我应该同时进行单元测试和 Web 测试(而不仅仅是 Web 测试)?

我目前的立场是:如果我使用web测试(在我的例子中可能是通过VS.NET'08测试工具和WatiN)以及代码覆盖率和广泛的数据来彻底测试我的ASP.NET应用程序,我应该不需要编写单独的单元测试,因为我的代码将通过所有层与UI一起进行测试。代码覆盖率将确保我触及每个功能代码段(或揭示未使用的代码),并且我可以提供涵盖所有合理预期条件的数据。但是,如果您有不同的意见,我想知道:单元测试的额外好处是证明将其包含在项目中的努力是合理的(请记住,无论如何我都在进行网络测试,所以在很多情况下,单元测试将覆盖网络测试已经覆盖的代码)。你能用具体的例子详细解释你的理由吗?我经常看到诸如“这不是它的本

c# - 单元测试方法中是否需要摘要

既然单元测试方法的命名使其目的更有意义,那么是否有必要为单元测试方法添加摘要?例子://////ChecktheFormatExceptionshouldbethrownwhenagivecountrydatalinecontainsainvalidnumber.///[TestMethod]publicvoidFormatException_Should_Thrown_When_Parse_CountryLine_Containing_InvalidNumber(){...} 最佳答案 我实际上更喜欢使用DescriptionAt

c# - 单元测试 Asp.Net WebApi : how to test correct routing of a method with [FromUri] parameters

我想测试这个Controller:[HttpGet]publicIListGetNotificationsByCustomerAndId([FromUri]string[]name,[FromUri]int[]lastNotificationID){return_storage.GetNotifications(name,lastNotificationID,_topX);}特别是,在此方法中,我想测试传入输入以形成请求Url的数组是否与进入routeData.Values的数组相同。如果对于单值参数(不是数组)它有效,但不适用于数组。如果我调试Values,我只会看到controll

c# - 是否可以分析单元测试的内存使用情况?

我正在考虑使用VisualStudio附带的单元测试框架构建一些单元测试以确定资源是否泄漏。目前,我正在评估最新版本的ANTSProfiler,但我不太清楚它是否允许我从代码中强制快照(这样我就可以拍摄快照,运行一些单元测试一百次,强制垃圾收集,并拍摄另一个快照,并保存结果供以后分析)。这可能与ANTS/VisualStudio相关,还是我应该探索其他分析器的选项? 最佳答案 你看过JetBrains的dotmemory吗??dotMemoryUnit是一个单元测试框架,允许您编写测试检查您的代码是否存在各种内存问题。例如:When

c# - 从多个线程进行单元测试的最佳方法是什么?

这种来自另一个question的后续我的。基本上,一旦我有了访问该文件的代码(稍后会查看那里的答案),测试它的最佳方法是什么?我正在考虑创建一个只产生大量BackgroundWorker的方法的或其他东西,并告诉他们所有加载/保存文件,并使用不同的文件/对象大小进行测试。然后,从线程获取响应以查看它是否失败/成功/是否使世界崩溃等。你们能就解决此问题的最佳方法提供任何建议吗?正如我之前所说,这对我来说有点新鲜:)编辑正在关注ajmastrean's帖子:我正在使用控制台应用程序通过Debug.Asserts进行测试:)更新我最初使用BackgroundWorker滚动处理线程(因为我已

c# - 在 Visual Studio 2013 中对托管单元测试使用混合模式调试

我在VisualStudio2013测试框架中有一个C#单元测试,该测试框架使用CLI和native代码。我想在执行C#单元测试时调查代码的native部分。但是,运行测试->调试->所有测试运行托管调试器,因此不会命中native代码中的断点,并且我无法像在混合模式调试器下运行程序时那样从C#->C++/CLI代码进行跟踪。例如,我的单元测试中的这段代码:[TestMethod]publicvoidTestRoundTripEvaluate(){varobj=newMyCLIObject();varroundtripped=RoundtripXml(obj);//Iwouldlike

c# - 如何(我应该)为 DocumentDb 单元测试模拟 DocumentClient?

从新的CosmosDb模拟器中,我得到了一个存储库来执行基本的documentdb操作,这个存储库被注入(inject)到其他类中。我想对一个基本查询进行单元测试。publicclassDocumentDBRepositorywhereT:class{//Detailsommited...publicIQueryableGetQueryable(){return_client.CreateDocumentQuery(UriFactory.CreateDocumentCollectionUri(_databaseId,_collectionId),newFeedOptions{MaxIt

c# - 在 MSTest 中忽略从通用基类继承的测试类

在MSTest中创建通用基测试类并从中继承时,我无法运行所有继承类的测试。BaseDependencyPropertyFactoryTest位于Whathecode.PresentationFramework.Tests程序集中。它是通用基类。(BaseDependencyPropertyFactoryTest)两个程序集都有一个继承自该基类的测试,称为DependencyPropertyFactoryTest。继承类所做的只是传递一个特定类型的参数。[TestClass]publicclassDependencyPropertyFactoryTest:BaseDependencyPr

c# - 如何将 AutoDataAttribute 与 InlineData 结合使用

我大量使用AutofixtureAutoDataTheories来创建我的数据和模拟。然而,这阻止了我使用XUnit的InlineData属性来为我的测试输入一堆不同的数据。所以我基本上是在寻找这样的东西:[Theory,AutoMoqDataAttribute][InlineData(3,4)][InlineData(33,44)][InlineData(13,14)]publicvoidSomeUnitTest([Frozen]MocktheInterface,MySutsut,intDataFrom,intOtherData){//actualtestomitted}这样的事情可

c# - 如何在 Windows 上安装 NUnit 3 控制台并运行测试?

我想从这样的控制台运行测试(在任何目录中,DLL文件可以用于不同的.NET版本):$nunit3-consoletest.dll我在谷歌上搜索了很多,但找不到如何设置它。官方教程没有任何用处,完全为零。跟随它让我无处可去:https://github.com/nunit/docs/wiki/Installation 最佳答案 很难找到,因为有很多过时的文档,无论是针对NUnit2还是NUnit3。步骤:官方NUnit3控制台安装程序在这里:https://github.com/nunit/nunit-console/releases