【c# – 如何正确编写异步XUnit测试?】教程文章相关的互联网学习教程文章

c# – 如何在MSBuild单元测试中访问teamcity配置参数【代码】

有没有办法在MSBuild单元测试中访问配置参数? 我将teamcity配置为每隔几个小时运行一次冗长的测试集.我不时地想要使用特定参数(字符串限制样本测试集)运行测试.我没有在单元测试中检查更改,而是单击团队城市中的“运行…”并将值设置为某个参数. 这可能吗?解决方法:一种可能的解决方案是从teamcity中的构建参数设置环境变量,然后让测试查找此环境变量以确定要运行的内容. 如果从配置步骤菜单中选择构建参数并添加新的构建参数,然...

c# – 更新,使用Moq删除单元测试的方法【代码】

我在单元测试中使用Moq框架.这是UpdateApplication测试方法:[TestMethod] public void UpdateApplication() {const string newAplpicationName = "NewApplication1";var data =new[]{new Application { Id = 1, Name = "Application1" }, new Application { Id = 2, Name = "Application2" },new Application { Id = 3, Name = "Application3" }, new Application { Id = 4, Name = "Application4" }}.AsQueryable();var mockSet ...

c# – 单元测试使用异步调用的MassTransit消费者【代码】

我们正在使用MassTransit异步消息传递(在RabbitMQ之上)来实现我们的微服务架构. 我们遇到了测试消费者的问题,而这些消费者又会进 下面的示例显示了一个简单的MassTransit使用者,它使用RestSharp进行出站调用并使用ExecuteAsync异步方法.public class VerifyPhoneNumberConsumer : Consumes<VerifyPhoneNumber>.Context {IRestClient _restClient;RestRequest _request;PhoneNumber _phoneNumber;PhoneNumberVerificationResponse _...

c# – 在不使用InlineAutoData的情况下使用InlineAutoData时的额外测试运行【代码】

我遇到的挑战是,在使用InlineAutoData时,测试也会随机运行.背景是我正在使用一些遵循规范所需的输入来测试转换.我对随机数据不感兴趣. 以下测试运行两次.一次使用InlineAutoData,另一次使用随机字符串.在随机数据运行中故意使测试变得简单并失败:[Theory, GeneralTransferTestConventions] [InlineAutoData("Allowed", "Allowed")] public void Testing(string test1Data, string test2Data) {Assert.Equal(test1Data, test2Data)...

在C#中测试会话超时【代码】

我在web.config中将会话超时设置为1.我想检查会话开始和结束是否按预期发生,所以我在global.asax.cs-中有这个//In Session_Start Response.Write("<script>alert('session started');</script>"); //In Session_End Response.Write("<script>alert('session ended');</script>");我在会话开始时收到警报但在结束时没有收到警报.当我放置断点时,我看到该行在Session_End中执行但屏幕上没有警报. 这是我第一次使用会话,即使我能够以另...

c# – 如何在VisualStudio中使用OpenCover代码覆盖率运行NUnit测试?

我是NUnit测试的新手.我能够为我的函数编写测试用例,现在我想知道我的测试用例的代码覆盖率.为此,我使用OpenCover.但是我不知道如何安装和使OpenCover与Visual Studio 2015一起使用,是否有人可以指导我为Visual Studio安装OpenCover并提供帮助以查看Visual Studio中的代码覆盖率?解决方法:我在Visual Studio中找到的代码覆盖率的最佳解决方案如下: >打开Visual Studio 2017>转到工具 – >扩展和更新>在搜索(窗口右上角)类型中转到...

c# – 为什么Test Explorer没有看到我对ASP.NET Core MVC的NUnit测试?【代码】

Visual Studio 2017,.Net CoreApp 1.1(目标框架) 我需要为我的ASP.NET Core MVC Web应用程序编写NUnit测试.我经常使用NUnit来构建基于.NET Framework 3.5-4.6.1的桌面项目. 我没有xunit的问题,但我想使用nunit. Here我在目前的情况下看到我要包含这样的NuGet包: > dotnet-test-nunit> NUnit 但测试资源管理器没有看到我的测试:[TestFixture] public class ProductTests {[Test]public void Name_Gets_ValidValue() {var name = "...

c# – ASP.NET核心中的单元测试标记助手 – 填充标记公共属性【代码】

我试图在一个新项目上实现最佳实践,我想我可以在多大程度上将单元测试扩展到MVC Tag Helpers.在这个例子中,我有一个非常简单的帮手,取自MVC documentation的Tag Helper部分,所以现在我有< email mail-to =“Support”>< / email>. 实际代码如下.public class EmailTagHelper : TagHelper {private const string EmailDomain = "contoso.com";public string MailTo { get; set; }public override void Process(TagHelperContext ctx...

c# – 测试nHibernate映射

我刚刚开始使用nHibernate和Fluent进行映射的新项目.架构师给我发了一个数据库,我从中生成了数百个实体类和相应的Fluent映射文件.我知道这不是理想的DDD做事方式,但生活很少是理想的. 我想要做的是测试所有映射是否正确,列映射正确,OneToMany,ManyToMany等.是否有一些自动或简单的方法来做到这一点?我考虑过编写一个简单的存储库来加载来自每个实体的记录,并确保不会引发任何异常,但是大多数表还没有数据.解决方法:看看Fluent NHi...

在C#中生成JavaScript并进行后续测试【代码】

我们目前正在开发一个ASP.NET MVC应用程序,该应用程序大量使用基于属性的元数据来驱动JavaScript的生成. 下面是我们正在编写的方法类型的示例:function string GetJavascript<T>(string javascriptPresentationFunctionName,string inputId,T model) {return @"function updateFormInputs(value){$('#" + inputId + @"_SelectedItemState').val(value);$('#" + inputId + @"_Presentation').val(value);}function clearInputs(){"...

c# – 单元测试委托方法【代码】

在单元测试方法中是否有任何意义,它唯一能做的就是委托另一个对象的工作?例:class abc {...public void MoveLeft(){fallingPiece.MoveLeft();}... }出于学习目的,我正在为我现有的一些课程进行单元测试.例如,为此MoveLeft()方法执行单元测试似乎有点奇怪.但我不确定如何完成Test-First. 谢谢解决方法:如果我这样做,你的代码会破坏吗?如果它会,那么你需要一个测试来捕获它.class abc {...public void MoveLeft(){// fallingPiece...

C# 监测每个方法的执行次数和占用时间(测试4)【代码】【图】

今天也要做这个功能,就百度一下,结果搜索到了自己的文章。一开始还没注意,当看到里面的一个注释的方法时,一开始还以为自己复制错了代码,结果仔细一看网页的文章,我去,原来是自己写的,写的确实不咋地。 把自己的文章的代码复制了下来,稍微改了一下,运行看了一下效果,然后仔细一看,计算的总时间不对,如下图: 上一篇文章的地址:https://www.cnblogs.com/guxingy/p/10142242.html 改了几个地方:/// <summary>/// 拦截器...

c# – 单元测试,确保良好的覆盖范围,同时避免不必要的测试【代码】

我编写了一个类,它是一个可枚举的包装器,用于缓存底层可枚举的结果,只有在枚举并到达缓存结果的末尾时才获取下一个元素.它可以是多线程的(获取另一个线程中的下一个项目)或单线程(获取当前线程中的下一个项目). 我正在阅读unit-testing,并希望得到适当的测试.我正在使用nunit.我的主要问题是我已经写了我的课并且正在使用它.它适用于我正在使用它(目前有一件事).所以,我正在编写我的测试,只是试着想一想可能出错的事情,因为我已经非...

c# – 如何重构测试应用程序?【代码】

我有一个测试应用程序,有一个类TestSeq和一个方法Go(),它包含这样的块:_writer.WriteLine("Doing foo action...");var stopwatch = Stopwatch.StartNew();// foo - some work herestopwatch.Stop();_writer.WriteDone("Results of foo action.", stopwatch.Elapsed);在“一些工作”中,我对WCF客户端有不同的调用(CRUD操作,过滤器等). 所以,很多代码都在重复,显然有些重构应该在这里完成.我想创建一个类TestAction,但我不知道什么是...

c# – 如何对Task Parellelism进行单元测试【代码】

我在.NET中有一个类,它创建并启动一个新的System.Threading.Tasks.Task,如下所示:public class ScheduledTask {private IFoo _foo;public ScheduledTask(IFoo foo){_foo = foo;}public void Start(){ _task = new Task(() => Run());_task.Start();}public void Stop(TimeSpan timeout){var taskCompletedNormally = _task.Wait(timeout);if (taskCompletedNormally){ _task.Dispose();_task = null; ...

UNIT - 相关标签