2013-08-01 5 views
13

Ich möchte eine Webanwendung testen, die in .NET mit verschiedenen Agenten geschrieben wird (iPhone, iPad, Android), ich benutze NUnit für die Tests und Selenium.Wie man Benutzeragent in selen mit .net ändert

Jeder hat ein Beispiel, um den Agenten (zum Beispiel für iPad oder iPhone) in Selen mit C# oder VB zu ändern?

Antwort

20

Beispiel UA (Sie können Google müssen sich die, die Ihren Zweck finden passen):

Mozilla/5.0 (iPad, CPU OS 6_0 wie Mac OS X) AppleWebKit/536,26 (KHTML, wie Gecko) Version/6.0 mobile/10A5355d Safari/8536,25

C# Firefox:

FirefoxProfile profile = new FirefoxProfile(); 
profile.SetPreference("general.useragent.override", "Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25"); 
IWebDriver driver = new FirefoxDriver(profile); 

C# Chrome:

ChromeOptions options = new ChromeOptions(); 
options.AddArgument("--user-agent=Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25"); 
IWebDriver driver = new ChromeDriver(options); 

C# PhantomJS (ungetestet Code):

PhantomJSOptions options = new PhantomJSOptions(); 
options.AddAdditionalCapability("phantomjs.page.settings.userAgent", "Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25"); 
IWebDriver driver = new PhantomJSDriver(options); 

C# IE: Sorry, ich glaube nicht, das ist möglich ursprünglich aus Selenium.

Weiterführende Literatur: Set user agent using Selenium WebDriver C# and Ruby

3

In C#:

public static FirefoxProfile myFireProfile = new FirefoxProfile(); 
myFireProfile.SetPreference("general.useragent.override", "Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10"); 
public IWebDriver driver= new FirefoxDriver(myFireProfile);