«Невозможно вызвать метод indexOf из undefined» при использовании Google Chrome (* googlechrome) в качестве цели Selenium RC - PullRequest
3 голосов
/ 14 февраля 2011

Я пытаюсь запустить тест в бета-версии Google Chrome 9.0.597.98 с использованием Selenium Grid.Я запускаю тест из C #, используя стандартную цель * googlechrome, которая поставляется с Selenium Grid.Когда я пытаюсь открыть сайт, меня встречает ошибка «Невозможно вызвать метод indexOf of undefined» .

Я нашел сообщение от того, кто предполагает, чтоРешение состоит в том, чтобы немного снизить безопасность в Chrome, передав некоторые параметры. Этот пост предлагает использовать что-то вроде этого:

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

BrowserConfigurationOptions bco = new BrowserConfigurationOptions();

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

По некоторым причинамЯ не вижу BrowserConfigurationOptions нигде. Это что-то, что поставляется с dll Selenium?Это что-то, чего нет в версии .NET, но есть в других?Какие варианты у меня есть для установки этого параметра --disable-web-security и есть ли лучший способ сделать это?

enter image description here

Ответы [ 3 ]

1 голос
/ 17 февраля 2011

Попробуйте это

[TestInitialize]

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


[TestMethod]

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

}

удаление / после того, как ryanhayes.net решает проблему

1 голос
/ 29 июля 2011

Большое спасибо за это, я искал эту информацию, и я получил ее здесь! Теперь я могу запустить свой тест в googlechrome, раньше у меня была такая же проблема.

У меня работает следующий код:

BrowserConfigurationOptions webSec = new BrowserConfigurationOptions();
selenium.start(webSec.setCommandLineFlags("--disable-web-security"));
0 голосов
/ 14 февраля 2011

Вы правы, предполагая, что .Net не имеет объекта BrowserConfigurationOptions, но, к счастью, он вам не нужен (это всего лишь тонкая оболочка).DefaultSelenium имеет два переопределения для метода Start().Один из них не принимает параметров и запускает браузер в обычном режиме, а другой принимает строку, определяющую параметры браузера.попробуйте selenium.Start("--disable-web-security")

...