c# – 我需要想法对这个Tasked方法进行单元测试

c# – 我需要想法对这个Tasked方法进行单元测试,第1张

概述这是有问题的方法: public void StartBatchProcessing(IFileBatch fileBatch){ var dataWarehouseFactsMerger = m_dataWarehouseFactsMergerFactory.Create(fileBatch); dataWarehouseFactsMerger.Merge(); if 这是有问题的方法:

public voID StartBatchProcessing(IfileBatch fileBatch){    var dataWarehouseFactsMerger = m_dataWarehouseFactsMergerFactory.Create(fileBatch);    dataWarehouseFactsMerger.Merge();    if(!m_isTaskStarted)    {        m_isTaskStarted = true;        m_lastQueuedBatchProcessingTask = new TaskFactory().StartNew(() => ProcessBatch(dataWarehouseFactsMerger));    }    else    {        m_lastQueuedBatchProcessingTask = m_lastQueuedBatchProcessingTask.ContinueWith(prevIoUs => ProcessBatch(dataWarehouseFactsMerger));    }}

正如您所看到的,我正在使用TPL一个接一个地排队任务,并且我想测试任务将按照它们在前一个完成后到达的顺序执行.

ProcessBatch方法受到保护,所以我认为它可以在派生类中被覆盖,并用于设置一些标志或其他东西并断言.

所有的想法都受到欢迎和赞赏.

解决方法 您可以创建DataWarehouseFactsMergerFactory的实现,该实现创建DataWarehouseFactsMerger的实现,这些实现能够记录输入的fileBatch和每个任务的开始时间,但其余部分并没有真正做任何事情. 总结

以上是内存溢出为你收集整理的c# – 我需要想法对这个Tasked方法进行单元测试全部内容,希望文章能够帮你解决c# – 我需要想法对这个Tasked方法进行单元测试所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1234070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存