MSTestクラスでSeleniumGrid2とRemoteWebDriverを使用して、OperaDriverを機能させるのに苦労しています。
CMDで次のコマンドを実行して、SeleniumハブとOperaノードを作成します。
start java -jar selenium-server-standalone-2.30.0.jar -role hub
start java -jar selenium-server-standalone-2.30.0.jar -role node -port 7001 -browser "browserName=opera,version=11.62,maxInstances=5,platform=WINDOWS" -hub http://localhost:4444/grid/register
これは正常に機能します。ブラウザでハブを表示すると、登録済みのノードを確認できます。
WebDriver
しかし、C#テストクラスで新しいものを作成しようとすると、例外が発生します。
DesiredCapabilities operaCapabilities = DesiredCapabilities.Opera();
operaCapabilities.SetCapability(CapabilityType.BrowserName, "opera");
operaCapabilities.SetCapability(CapabilityType.Platform, "WINDOWS");
operaCapabilities.SetCapability(CapabilityType.Version, "11.62");
operaCapabilities.SetCapability("opera.binary", "C:\\Program Files\\Opera\\opera.exe");
operaCapabilities.SetCapability("opera.port", 7001);
RemoteWebDriver operaDriver = new RemoteWebDriver(operaCapabilities);
実際、2つの異なる例外が発生します。Seleniumでハブとノードを作成した後、初めて次のようになります。
バンドルされたランチャーをサポートするプラットフォームが見つかりませんでした。手動で設定してください
ビルド情報:バージョン: '2.30.0'、リビジョン:'dc1ef9c'、時間: '2013-02-19 00:15:27'
システム情報:os.name:'Windows 8'、os.arch:'x86'、os.version: '6.2'、java.version: '1.7.0_15'
ドライバー情報:driver.version:OperaDriver
その後、毎回次のエラーが発生します。
クラスcom.opera.core.systems.runner.launcher.OperaLauncherRunnerを初期化できませんでした
私はを使用してSelenium-standalone-2.30.0
います。
Operaバージョン12.14を使用していましたが、OperaDriver wikiページで互換性のあるバージョンのリストを確認した後、11.62にダウングレードしましたが、エラーは同じままです。
上記の機能がある場合とない場合でRemoteWebDriverを初期化しようとしましたが、毎回同じ結果が得られます。
ここでの問題と、RemoteWebDriverをOperaでこのように動作させる方法を知っている人はいますか?
編集:ブラウザを開いて表示したときのように読み取り、バージョンが読み取らOpera version 12.14
れるプラットフォームである可能性がありますか?私はノードとのようにプラットフォームを指定しているので。RemoteWebDriverのプラットフォームとしてWINDOWS8を指定しようとすると、一致する列挙型が見つからない場合に新しい例外がスローされます。'WINDOWS 8'
11.62
"WIN32"
Opera
Help => About
WINDOWS
RemoteWebDriver
org.openqa.selenium.WebDriverException:java.lang.IllegalArgumentException:列挙型定数がありませんorg.openqa.selenium.Platform.WINDOWS 8
Edit2 :実行しているのに、何らかの理由CurrentPlatform
で戻ってきました。Vista
Windows8
Platform platform = Platform.CurrentPlatform;
OperaDriver
また、ソースコードが大文字の「VISTA」をチェックするのに対し、C#のプラットフォームは「Vista」と表示されることにも気づきました。
これが問題の原因である可能性がありますか?