gap*_*apo 3 mstest code-coverage vs-unit-testing-framework
我有一个Web服务的测试项目,当我在调试模式下运行测试时,一切正常.但是,当我刚运行测试时,我得到以下错误,对于我尝试获取代码覆盖率的引用程序集:
类初始化方法WebServiceTest.wstest.MyClassInitialize引发异常.System.IO.FileLoadException:System.IO.FileLoadException:无法加载文件或程序集'TestAssembly,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 57f286581e1d278a'或其依赖项之一.强名称验证失败.(来自HRESULT的异常:0x8013141A)---> System.Security.SecurityException:强名称验证失败.(来自HRESULT的异常:0x8013141A).我发现的所有内容都表示要在GAC中注册TestAssembly.这是我该怎么办?为什么它在调试模式下工作?谢谢
我有同样的问题,下面的链接帮助了我......
http://weblogs.asp.net/soever/archive/2005/07/23/420338.aspx
VS.NET 2005:已签名程序集的代码覆盖率我目前正在使用VS.NET 2005处理应用程序,并且因为所有TDD工具(如单元测试和代码覆盖率)都可用,所以我开始使用它们.
当我在已签名的应用程序上启动代码覆盖时,我得到以下异常:
测试方法X引发异常:System.IO.FileLoadException:无法加载文件或程序集'Y,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = Z'或其依赖项之一.HRESULT:0x8013141A强名称验证失败.---> System.Security.SecurityException:来自HRESULT的异常:0x8013141A强名称验证在X处失败.
如果你想一想就不那么奇怪了.程序集已签名,代码覆盖需要代码检测,意味着修改程序集,导致程序集错误,因此验证失败.
解决方案是在仪表后重新组装组件.
如果在解决方案项中打开localtestrun.testrunconfig文件(或类似内容)(双击它),则可以在"代码覆盖率"部分中启用"重新签名".这解决了这个问题.
| 归档时间: |
|
| 查看次数: |
4937 次 |
| 最近记录: |