6

私はnew emulation feature introduced in the new Chromeが大好きです。実際には、それを使用して複数の解像度/デバイス用のモバイルウェブサイトをテストするのが好きです。これを行うには、エミュレーション機能を何らかの形で制御する必要があります。Chrome 32 - JSまたはウェブドライバを介したエミュレーション

デバイスがエミュレートされているかどうかを制御する方法はありますか?

OpenQA.Selenium.Chrome.ChromeDriverモバイルデバイスをエミュレートする方法を知っているといいでしょう。

ありがとうございます。

+1

これがあります:https://code.google.com/p/chromedriver/issues/detail?id=399は、具体的に見ますコメント#3。 – SiKing

+0

humm ...そのアイテムの進捗状況を確認する方法を知っていますか? – vtortola

+0

@vtortolaソースの "Samuel Rawlins"からのコミットを調べますか?またはその問題で尋ねますか? – SiKing

答えて

0

Chrome搭載デバイスにオプションを追加できます。

ChromeOptions options = new ChromeOptions(); 
options.addArguments("--user-agent=Mozilla/5.0 (iPad; CPU OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3"); 

上記の例では、「user-agent」スイッチが提供されています。同様に、 "window-size"コマンドラインスイッチを使用してみてください。

動作している場合は教えてください。

クロムのすべてのコマンドラインスイッチの一覧を以下に示します。

http://peter.sh/experiments/chromium-command-line-switches/

注:下記のクロームプラグインをインストールすることで、あなたはさまざまなデバイスのために必要なユーザーエージェントの設定を取得することができます。

0

ここで私はC#でそれをやった方法は次のとおりです。

IWebDriver driver; 
     string setDevice = "Apple iPhone 6"; 
     var mobileEmulation = new Dictionary<string, string> { { "deviceName", setDevice } }; 
     var chromeOptions = new ChromeOptions(); 
     chromeOptions.AddAdditionalCapability("mobileEmulation", mobileEmulation); 
     driver = new ChromeDriver(chromeOptions); 
     driver.Manage().Timeouts().SetPageLoadTimeout(TimeSpan.FromSeconds(90)); 
     driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(Convert.ToDouble(30))); 
     return driver; 
関連する問題