首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何研究拒绝在NUnit中加载测试程序集的过程?

如何研究拒绝在NUnit中加载测试程序集的过程?
EN

Stack Overflow用户
提问于 2010-11-05 03:20:54
回答 1查看 3.9K关注 0票数 5

(这适用于我团队中的其他人,因此很可能与我的机器的安装有关。)

我正在使用NUnit GUI测试运行程序。当我使用File/Open加载测试的程序集时,我会得到一个错误。

该项目是用Visual 2005构建的,Visual的“关于”框给出了.NET框架版本为2.0.50727 SP2。

这是我得到的错误:

程序集未加载

System.BadImageFormatException :无法加载文件或程序集“测试、Version=0.0.0.0、Culture=neutral、PublicKeyToken=null”或其依赖项之一。试图加载格式不正确的程序。您可能试图加载使用CLR版本构建的程序集,而不是当前运行NUnit的版本(2.0.50727),或者试图将64位程序集加载到32位进程中。

我刚刚使用程序集绑定日志查看器 (Fuslogvw.exe)查看了融合日志,这就是我所看到的,它没有任何意义,正如我告诉它看所有绑定。

代码语言:javascript
运行
AI代码解释
复制
*** Assembly Binder Log Entry  (05/11/2010 @ 11:55:26) ***

The operation was successful.
Bind result: hr = 0x0. The operation completed successfully.

Assembly manager loaded from:  C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscorwks.dll
Running under executable  C:\Program Files (x86)\NUnit 2.5.7\bin\net-2.0\nunit.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: User = KSSRETAIL\ian.ringrose
LOG: DisplayName = System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
 (Fully-specified)
LOG: Appbase = file:///C:/Program Files (x86)/NUnit 2.5.7/bin/net-2.0/
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = nunit.exe
Calling assembly : nunit-gui-runner, Version=2.5.7.10213, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\Program Files (x86)\NUnit 2.5.7\bin\net-2.0\nunit.exe.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework64\v2.0.50727\config\machine.config.
LOG: Post-policy reference: System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
LOG: Reusing an assembly instance that was previously loaded (C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll).

多亏了Lasse给我指明了正确的方向。当我运行nunit-x86.exe时,我可以加载测试DLL。因此,系统中必须有一个32位的DLL .然而,仍然不知道如何获得一组有用的日志,以便以逻辑的方式跟踪这类问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-11-05 03:29:32

这有几个原因:

1) .NET框架的版本。确保加载了正确的版本,或者在配置(app.config)中定义它

2)版本地狱:一些程序集使用与其他程序集不匹配的版本,而您可以在本地文件夹中使用一个版本。这通常是最有可能的原因。

3)您没有对程序集的引用,但这是您的系统所需要的,并且可能是动态加载的(nhibernate有一些这样的dll),并且它们不会自动复制到本地的test bin文件夹中。在本地文件夹中添加对那些DLL的引用。

4)位32位/ 64位,如果在任何点都没有加载托管代码

要找出答案,请检查以上所有内容。我还建议您通过sysinternals运行进程监视器。在文件加载事件上,您将看到一个未找到的文件事件。这需要一段时间来适应,但它是一个非常好的工具。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4105398

复制
相关文章
用Nunit测试通讯程序
    对于Nunit,我是个纯粹的新手,没想到,第一个练手的,居然是一个通讯程序。难度略微大了点。我的通讯程序是一个类似通讯服务器的程序,能够监听和维持多个连接,并实现向任意连接的收发数据。因为原来实现过类似的东西,这次做的步子又前进了一些,把整个服务器的这种工作模式抽象出来了,做成了一个与具体业务无关的通讯层。我只是按照自己的想法把代码写了出来,上层还有很多逻辑层代码,如果在原来,就得等全套代码都好了,才能开始进行测试和修改。不过,现在我有Nunit,更准确的说,是有了Testdriven.Net,终于
用户1075292
2018/01/23
7820
CLR中的程序集加载
彭泽0902
2018/01/04
1.2K0
springboot测试中主程序中能加载bean测试中无法加载bean
如遇到springboot版本的问题导致bean类无法注入到项目中,可能是注解和springboot版本不匹配导致启动类启动时扫描不到相应的bean类
一个风轻云淡
2022/11/13
1.8K0
springboot测试中主程序中能加载bean测试中无法加载bean
使用NUnit在.Net编程中进行单元测试
原文地址:http://www.microsoft.com/china/community/Column/59.mspx 引言: 举一个可能会发生在你身边的事件将更能贴近实际,幸好我们现在就有一件在程序员看来非常普通的任务: 你今天第一天上班,你的项目经理拿给你一叠不算厚的文档,告诉你今天的任务是按照文档中的要求编写一个.Net类,可能因为任务并不复杂,所以他看上去非常的随意。 今天能否很好的完成任务对你来说非常特殊,你拿过来后快速略过了前面大段的项目介绍,因为你知道那些对你并不重要,印象中
菩提树下的杨过
2018/01/22
1.8K0
程序集未加载错误
csproj文件中缺少文件引用,添加即可,添加成功后,bin文件夹下会自动拷贝过去,否则发生找不到引用。 ef中容易出现此类问题
sofu456
2020/03/18
1.1K0
Mono 3.2 上跑NUnit测试
NUnit是一款堪与JUnit齐名的开源的回归测试框架,供.net开发人员做单元测试之用,可以从www.nunit.org网站上免费获得,最新版本是2.5。Mono 3.2 源码安装的,在/usr/bin/ 下面有2.4.8 版本: [azureuser@mono /]$ /usr/bin/nunit-console4 NUnit version 2.4.8 Copyright (C) 2002-2007 Charlie Poole. Copyright (C) 2002-2004 J
张善友
2018/01/19
6890
浅说驱动程序的加载过程
在开始之前,首先简要介绍一下本文的主题,这篇文章是关于将内核模块加载到操作系统内核的方法的介绍。所谓“内核模块”,指的便是通常所说的驱动程序。不过因为加载到内核的程序通常是用一来操作硬件的,所以驱动程序的名字要更常见些。在以下的叙述中,我将主要使用“驱动程序”这个词。众所周知,Windows操作系统将程序划分为用户模式和内核模式,在x86计算机上,用户模式的程序运行在Ring3,而内核模式的程序运行在Ring0。运行在Rin g3级别上的程序有诸多限制,这方面的例子是不胜枚举的。对于用户模式程序,主 要使
用户1467662
2018/03/30
3K0
JVM中类加载的过程
  前面看了类加载的时机,本文来记录下类加载的过程,也就是加载的每个阶段都做了哪些事情
用户4919348
2019/04/02
5310
JVM中类加载的过程
Java 类在 Tomcat 中是如何加载的?
https://www.cnblogs.com/xing901022/p/4574961.html
Java技术栈
2019/09/26
2.6K0
Java 类在 Tomcat 中是如何加载的?
.NET 的程序集加载上下文
我们编写的 .NET 应用程序会使用到各种各样的依赖库。我们都知道 CLR 会在一些路径下帮助我们程序找到依赖,但如果我们需要手动控制程序集加载路径的话,需要了解程序集加载上下文。
walterlv
2023/10/22
4010
.NET 的程序集加载上下文
[PHP] 框架中.env文件的加载过程
现在很多框架使用根目录的.env文件来配置环境变量,php本身是不会去解析这个文件的,需要使用php代码读取和解析这个文件放入环境变量中
唯一Chat
2020/02/11
1.9K0
原 利用Appdomain动态加载程序集,
结构图 生成目录和新的appdomain基目录相同,随时生成,随时加载。 接口代码     public interface FuncProcessings      {          void GetFunctionMessage(FuncMessage funcMessage);         string ReturnResult();     }     [Serializable]    public struct FuncMessage     {         private str
魂祭心
2018/05/17
1.1K0
CLR查找和加载程序集的方式(一)
  C#开发者在开发WinForm程序、Asp.Net Web(MVC)程序等,不可避免的在项目中引用许多第三方的DLL程序集,
张传宁IT讲堂
2019/09/17
1.9K0
CLR查找和加载程序集的方式(一)
ab测试中并发量导致的拒绝问题
今天对一个微信投票的小项目进行ab测试 环境:windows 10+cmd(管理员身份) 问题:在输入了ab -n 5000 -c 500 http://hostname/并enter之后等待片刻出现了apr_socket_connect():由于目标计算机积极拒绝,无法连接。(730061) 在网上找到了其他人的方法,参考后,问题解决 解决方法:找到http.conf,打开,找到关于httpd-mpm.conf的引用配置,如果没有引用,则去掉#,反之则无视,打开httpd-mpm.conf文件,将其中的T
lestat
2018/04/17
1.3K0
在 VisualStudio 中以 WSL 方式启动程序的过程纪实
WSL 是 “Windows Subsystem for Linux” 的缩写,也就是运行在 Windows 系统中的 Linux 子系统。如果我们的应用程序最终是会放在 Linux 系统中运行的话,那么在开发阶段就以这种方式启动和调试,就能提前发现在真实线上环境可能出现的问题,有利于增强程序的健壮性。
独立观察员
2023/10/08
6200
在 VisualStudio 中以 WSL 方式启动程序的过程纪实
.net持续集成单元测试篇之单元测试简介以及在visual studio中配置Nunit使用环境
单元测试是一段自动化的代码,这段代码调用被测试的工作单元,之后对这个单元的单个最终结果的某些假设进行检验。单元测试几乎都是用单元测试框架编写的。单元测试容易编写,能快速运行。单元测试可靠、可读、并且可维护。只要产品代码不发生变化,单元测试的结果是稳定的。
AI.NET 极客圈
2019/08/05
3.4K0
.net持续集成单元测试篇之单元测试简介以及在visual studio中配置Nunit使用环境
【猫狗数据集】加载保存的模型进行测试
分割线-----------------------------------------------------------------
西西嘛呦
2020/08/26
7870
【猫狗数据集】加载保存的模型进行测试
Jenkins之Nunit的应用
一、在Jenkins中安装Nunit插件 进入jenkins的插件管理模块,下载Nunit插件。此步骤不做截图说明 二、引用nunit.console的nuget包 通过项目引用Nunit.conso
sam dragon
2020/05/18
6990
Jenkins之Nunit的应用
DevOps 测试在企业中如何落地?
互联网时代,企业越来越注重产品的快速迭代与交付,当然产品质量也是举足轻重。企业在有限的资源情况下,快速的步调意味着更多的挑战,本次演讲重点在于测试人员如何无缝连接客诉,运营,产品,研发,运维以及高效快速搭建DevOps测试体系从而保证产品快速交付的质量。
DevOps时代
2018/08/01
1.3K0
DevOps 测试在企业中如何落地?
如何看待测试过程中的漏测发生
漏测,相信对于每个测试同学而言,都是“谈虎变色”的事,但是实际工作中,我们稍有不谨慎便会和它来一次“亲密接触”。那么,现在我们一起来聊聊测试中的漏测。
软件测试君
2020/02/26
1.1K0

相似问题

NUnit无法加载程序集

11

NUnit:未能加载程序集nunit.framework

13

无法在NUnit中加载程序集

12

NUnit错误:不是测试程序集

22

NUnit测试错误‘无法加载文件或程序集..’

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档