Nunit 从teamcity运行测试时,安装方法失败
我通过nunit成功地在本地运行测试。但是,当我试图通过teamcity运行它们时,一些测试通过了,但由于给出以下错误,一些测试失败了 安装方法失败。System.Runtime.InteropServices.COMException:由于以下错误,使用IClassFactory中的CLSID{0002DF01-0000-0000-C000-0000000000 46}创建COM组件的实例失败:800704a6。 在WatiN.Core.IE.CreateNewIEAndGoToUri(Uri Uri、LogonDialogHandler、LogonDialogHandler、Boolean createInNewProcess) 在WatiN.Core.IE..ctor()Nunit 从teamcity运行测试时,安装方法失败,nunit,teamcity,watin,Nunit,Teamcity,Watin,我通过nunit成功地在本地运行测试。但是,当我试图通过teamcity运行它们时,一些测试通过了,但由于给出以下错误,一些测试失败了 安装方法失败。System.Runtime.InteropServices.COMException:由于以下错误,使用IClassFactory中的CLSID{0002DF01-0000-0000-C000-0000000000 46}创建COM组件的实例失败:800704a6。 在WatiN.Core.IE.CreateNewIEAndGoToUri(Uri
在C:\Tests.vb中的test.Setup()处:第14行您是否尝试在teamcity服务器上通过Nunit运行测试?这可能会给您提供更多信息。不确定这是否已解决,但我在两个不同的测试夹具中遇到了相同的错误,一个是用C#编写的,另一个是用VB.NET编写的 对于C#fixture,我需要做的就是在创建WatIn.IE的新实例时,将第二个参数添加到:IE var IE=new IE(url,true) “true”告诉WatIn“createInNewProcess”,这将在新进程中打开下一个IE 然而,由于某些原因,这对于用VB.NET编写的测试夹具不起作用。 对于这个fixture,我必须在我们的一个C#库中调用一个方法,以强制在每个测试中使用IE闭包“TearDown”方法。 下面的C#代码成功了:
public static void CloseInternetExplorers()
{
var processes = from process in Process.GetProcesses()
where process.ProcessName == "iexplore"
select process;
foreach (var process in processes)
{
while (!process.HasExited)
{
process.Kill();
process.WaitForExit();
}
}
}
如果您从测试中删除WatiN的使用,您的NUnit测试用例是否无误通过?相关帖子另一篇相关帖子