Hey guys, I am going to post some snippets to run a test in different browsers with C# and selenium.
Import:
using System; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; using OpenQA.Selenium.Firefox; using OpenQA.Selenium.IE; using OpenQA.Selenium.PhantomJS; using Microsoft.VisualStudio.TestTools.UnitTesting; using NUnit.Framework; using OpenQA.Selenium.Support.PageObjects; using Assert = NUnit.Framework.Assert;
Driver Utils class:Â
Just the beginning of the class declaring the WebDriver and the TxtSearch field, which will be used for all the below functions to open a specific browser.
namespace Helpers { [TestClass] public class DriverUtils { IWebDriver webDriver; //Declaring search element [FindsBy(How = How.Name, Using = "q")] public IWebElement TxtSearch { get; set; }
Open Chrome:
[Test] public void Chrome_Browser() { webDriver = new ChromeDriver(); AssertSearchElement(); }
Open Chrome Mobile Emulator:
[Test] public void Chrome_Mobile_Emulator_Browser() { ChromeOptions chromeCapabilities = new ChromeOptions(); chromeCapabilities.EnableMobileEmulation("Google Nexus 5"); webDriver = new ChromeDriver(chromeCapabilities); AssertSearchElement(); }
Open Chrome Capabilities starts Maximized:
[Test] public void Chrome_Capabiblities_Browser() { ChromeOptions chromeCapabilities = new ChromeOptions(); chromeCapabilities.AddArgument("start-maximized"); webDriver = new ChromeDriver(chromeCapabilities); AssertSearchElement(); }
Open Firefox:
[Test] public void Firefox_Browser() { webDriver = new FirefoxDriver(); AssertSearchElement(); }
Open Firefox with Profile:
[Test] public void Firefox_Profile_Browser() { var profile = new FirefoxProfile(); profile.SetPreference("browser.startup.homepage", "https://www.azevedorafaela.wordpress.com/"); webDriver = new FirefoxDriver(profile); AssertSearchElement(); }
Open PhantomJS:
[Test] public void PhantomJS_Browser() { webDriver = new PhantomJSDriver(); AssertSearchElement(); }
Open PhantomJS with Capabilities:
[Test] public void PhantomJS_Capabilities_Browser() { var options = new PhantomJSOptions(); options.AddAdditionalCapability("phantomjs.page.settings.userAgent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.94 Safari/537.36"); webDriver = new PhantomJSDriver(options); AssertSearchElement(); }
Open Internet Explorer:
[Test] public void IE_Browser() { webDriver = new InternetExplorerDriver(); AssertSearchElement(); }
Open Internet Explorer with Options:
[Test] public void IE_Options_Browser() { var options = new InternetExplorerOptions { IgnoreZoomLevel = true }; webDriver = new InternetExplorerDriver(options); AssertSearchElement(); }
Assert Search Element is Displayed:
public void AssertSearchElement() { webDriver.Navigate().GoToUrl("https://www.google.com"); PageFactory.InitElements(webDriver, this); Assert.IsTrue(TxtSearch.Displayed); }
Close/Quit Browser and driver function:
[TearDown] public void CloseDriver(IWebDriver driver) { driver.Close(); driver.Quit(); } } }
See you again in the end of this week, hopefully I will have the complete flow for a BDD scenario with C# and Selenium.