dotCover控制台运行程序IIS快照未包含所有DLL

问题描述

我的团队正在尝试使用dotCover控制台运行程序在我们的每晚构建服务器上生成覆盖率。我们对IIS上托管的应用程序进行了一些端到端测试,这些测试向目标应用程序发出HTTP请求,这是非常标准的工作。我们发现工作流程如下:

  1. 在构建代理上设置/安装IIS应用程序
  2. 向应用程序发送一个简单请求,以使IIS启动它(我们称其为“ ping”)
  3. 运行dotCover(dotCover.exe iis --Output=someSnapshot.dcvr --Instance=1 --DisableNGen
  4. 运行我们的测试套件
  5. 结束测试范围(dotCover.exe send --Instance=1 --Command=GetSnapshotAndKillChildren
  6. 清理,上传日志和快照等。

我们根据已测试的应用程序将测试套件分为多个作业,这种模式适用于大多数测试作业。但是,对于一个测试作业/应用程序,我们在覆盖率快照中看不到任何第一方代码,相反,我们只看到了第三方DLL(Dapper,ElasticSearch.Net Protobuf等)。过去,通过在开始覆盖之前对IIS托管应用程序进行适当的ping操作可以解决此问题,但是我们现在在所有地方都在执行此操作,因此我有些茫然。

一件有趣的事情是,登录到构建服务器并手动运行dotCover + ping代码(在测试运行完成之后)确实会生成具有预期DLL的快照-这意味着以下几点:一是dotCover仅涵盖命令启动时由IIS加载的DLL,其二,IIS不会针对某些请求立即加载所有DLL。但这只是猜测-那里还有其他人处理过这个问题吗?这两个工具都缺少文档。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...