3

我正在尝试使用 Selenium Grid 在 Google Chrome 9.0.597.98 beta 中运行测试。我使用 Selenium Grid 附带的默认 *googlechrome 目标从 C# 启动测试。当我尝试打开一个站点时,我遇到了“无法调用未定义的方法'indexOf'”错误。

我发现有人建议解决方案是通过传递一些参数来稍微降低 Chrome 的安全性。 这篇文章建议使用这样的东西:

DefaultSelenium selenium = new DefaultSelenium(location, port, browser, targetPath);

BrowserConfigurationOptions bco = new BrowserConfigurationOptions();

selenium.start(bco.setCommandLineFlags("--disable-web-security"));

由于某种原因,我看不到BrowserConfigurationOptions任何地方。 这是 Selenium dll 附带的东西吗?它是 .NET 版本中不可用但在其他版本中可用的东西吗?我有什么选项来设置这个“--disable-web-security”选项,有没有更好的方法呢?

在此处输入图像描述

4

3 回答 3

1

尝试这个

[TestInitialize]

public void PreTest()
{
 selenium = new    DefaultSelenium("localhost",4444,"googlechrome","http://www.ryanhayes.net")
}


[TestMethod]

public void TestRyanHayesDotNet()
{
selenium.Open("/")

}

在 ryanhayes.net 解决问题后删除 /

于 2011-02-17T01:52:26.673 回答
1

非常感谢这个,我正在寻找这个信息,我在这里得到了它!现在我可以在 googlechrome 中运行我的测试,之前我遇到了同样的问题。

以下代码对我有用:

BrowserConfigurationOptions webSec = new BrowserConfigurationOptions();
selenium.start(webSec.setCommandLineFlags("--disable-web-security"));
于 2011-07-29T17:59:39.710 回答
0

您假设.Net 没有BrowserConfigurationOptions对象是正确的,但幸运的是您不需要它(它只是一个薄包装器)。Start()DefaultSelenium 对该方法有两个覆盖。其中一个不带参数并正常启动浏览器,但另一个带一个字符串指定浏览器选项。尝试selenium.Start("--disable-web-security")

于 2011-02-14T18:02:19.857 回答