複数のブラウザ(IE、FF、Chrome)の自動テストでC#でSeleniumを実行していますが、FirefoxではなくChrome用に渡すテストがあります。ブラウザの種類を検出する方法
自動テストで現在使用されているブラウザの種類を検出する方法はありますか? https://www.nuget.org/packages/UAParser/
それはクライアントヘッダを読み、それを解析します:
複数のブラウザ(IE、FF、Chrome)の自動テストでC#でSeleniumを実行していますが、FirefoxではなくChrome用に渡すテストがあります。ブラウザの種類を検出する方法
自動テストで現在使用されているブラウザの種類を検出する方法はありますか? https://www.nuget.org/packages/UAParser/
それはクライアントヘッダを読み、それを解析します:
あなたはナゲットからUAParserをインストールすることができ、次のコード
System.Web.HttpBrowserCapabilities browser = Request.Browser;
string s = "Browser Capabilities\n"
+ "Type = " + browser.Type + "\n"
+ "Name = " + browser.Browser + "\n"
+ "Version = " + browser.Version + "\n"
+ "Major Version = " + browser.MajorVersion + "\n"
+ "Minor Version = " + browser.MinorVersion + "\n"
+ "Platform = " + browser.Platform + "\n"
+ "Is Beta = " + browser.Beta + "\n"
+ "Is Crawler = " + browser.Crawler + "\n"
+ "Is AOL = " + browser.AOL + "\n"
+ "Is Win16 = " + browser.Win16 + "\n"
+ "Is Win32 = " + browser.Win32 + "\n"
+ "Supports Frames = " + browser.Frames + "\n"
+ "Supports Tables = " + browser.Tables + "\n"
+ "Supports Cookies = " + browser.Cookies + "\n"
+ "Supports VBScript = " + browser.VBScript + "\n"
+ "Supports JavaScript = " +
browser.EcmaScriptVersion.ToString() + "\n"
+ "Supports Java Applets = " + browser.JavaApplets + "\n"
+ "Supports ActiveX Controls = " + browser.ActiveXControls
+ "\n"
+ "Supports JavaScript Version = " +
browser["JavaScriptVersion"] + "\n";
SeleniumテストプロジェクトでHttpRequestオブジェクトを取得するにはどうすればよいですか?私たちが扱っている唯一のオブジェクトはWebDriverです。 – AngieM
を使用してください。
Exemple:
//string uaString = "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3";
// Request the header
string uaString= HttpContext.Current.Request.UserAgent.ToString();
// get a parser with the embedded regex patterns
var uaParser = Parser.GetDefault();
// get a parser using externally supplied yaml definitions
// var uaParser = Parser.FromYamlFile(pathToYamlFile);
// var uaParser = Parser.FromYaml(yamlString);
ClientInfo c = uaParser.Parse(uaString);
Console.WriteLine(c.UserAgent.Family); // => "Mobile Safari"
Console.WriteLine(c.UserAgent.Major); // => "5"
Console.WriteLine(c.UserAgent.Minor); // => "1"
Console.WriteLine(c.OS.Family); // => "iOS"
Console.WriteLine(c.OS.Major); // => "5"
Console.WriteLine(c.OS.Minor); // => "1"
Console.WriteLine(c.Device.Family); // => "iPhone"
'((RemoteWebDriver)ドライバ).Capabilities.BrowserName'ない場合は、あなたが –
こんにちは@OscarMartinezを試してみました何を示しています。私はこれを試してみましたが、Chromeはマイナーバージョンを返しますが、IEのみメジャーバージョン(11)を返します。 IE 11のマイナーバージョンをどうやって手に入れることができるか知っていますか? – AngieM
@AngieMあなたはコンソールアプリケーションかASP.NETですか? –