Check If Element Exists in C# Selenium Drivers

Debomita Bhattacharjee
Updated on 30-Jan-2021 12:20:16

5K+ Views

We can check if element exists with Selenium webdriver in C#. This can be determined with the help of the FindElements method. It returns a list of elements which matches the locator passed as a parameter to that method.If there are no matching elements, an empty list is obtained. In case we have used the method FindElement instead of FindElements, NoSuchElementException will be thrown if there are no matching elements.For implementation we shall be using the NUnit framework.Exampleusing NUnit.Framework; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; using OpenQA.Selenium.Firefox; using System; using System.Collections.Generic; namespace NUnitTestProject1{    public class Tests{       String u ... Read More

Use Selenium in C#

Debomita Bhattacharjee
Updated on 30-Jan-2021 12:17:02

590 Views

We can use Selenium in C#. We should have Visual Studio 2019 installed in the system along with Selenium webdriver and any browser like Firefox, Chrome, and so on. Then we must utilize the NUnit framework.Launch Visual Studio 2019 and then click on Create a new project.Type NUnit in the search box appearing in Create a new project pop−up. Select NUnit Test Project(.NET Core) from the search results.Enter Project name and Location. Then click on Create to proceed.As the project is set up on NUnit(.Net Core), the Setup and Test methods shall be given by default.We should navigate to the ... Read More

Scroll to Element with Selenium WebDriver Using C#

Debomita Bhattacharjee
Updated on 30-Jan-2021 12:12:49

5K+ Views

We can scroll to an element with Selenium webdriver in C#. This is done with the help of JavaScript Executor. Selenium can run JavaScript commands with the help of ExecuteScript method.The method scrollIntoView in JavaScript is used to perform the scrolling action and the value true is passed as a parameter to the method. This is then passed to the ExecuteScript method.Syntaxvar e = driver.FindElement(By.XPath("//*[text()='Careers']")); ((IJavaScriptExecutor)driver) .ExecuteScript("arguments[0].scrollIntoView(true);", e);For implementation we shall be using the NUnit framework.Exampleusing NUnit.Framework; using OpenQA.Selenium; using OpenQA.Selenium.Firefox; using System; namespace NUnitTestProject1{    public class Tests{       String u = "https://www.tutorialspoint.com/index.htm";       IWebDriver ... Read More

Run Selenium Tests in Multiple Browsers Sequentially with C# and NUnit

Debomita Bhattacharjee
Updated on 30-Jan-2021 12:10:16

495 Views

We can run Selenium tests in multiple browsers one after another from C# NUnit. This is done with the help of the Test Fixture concept. This is an attribute that identifies a class, step up and tear down methods.There are some rules to be followed for a class to have a fixture −It should not be of type abstract.There should be a default constructor for a non−parameterized fixture.The parameterized fixture should have a constructor.It can be publicly exported.Exampleusing NUnit.Framework; using OpenQA.Selenium using OpenQA.Selenium.Chrome; using OpenQA.Selenium.Firefox; using System; namespace NUnitTestProject1{    //Test Fixture declaration    [TestFixture(typeof(FirefoxDriver))]    [TestFixture(typeof(ChromeDriver))]    public class ... Read More

Enable Cookies in PhantomJSDriver with Selenium

Debomita Bhattacharjee
Updated on 30-Jan-2021 12:08:37

245 Views

We can enable cookie with Selenium Webdriver in C#. A cookie is the data stored by the browser. A key−value pair is used to store the information in cookies to hold the relevant information.To add a cookie, the method AddCookie is used. The key and value of the cookie are passed as parameters to the method. Also, to obtain the cookie information, GetCookieNamed method is used.Syntaxdriver.Manage().Cookies.AddCookie(new Cookie("Automation", "QA")); driver.Manage().Cookies.GetCookieNamed("Automation");For implementation we shall be using the NUnit framework.Exampleusing NUnit.Framework; using OpenQA.Selenium; using OpenQA.Selenium.Firefox; using System; namespace NUnitTestProject1{    public class Tests{       String u = "https://www.tutorialspoint.com/index.htm";       ... Read More

Selenium vs BeautifulSoup for Web Scraping

Debomita Bhattacharjee
Updated on 30-Jan-2021 12:06:08

318 Views

We can perform web scraping with Selenium webdriver and BeautifulSoup. Web Scraping is used to extract content from a page. In Python, it is achieved with the BeautifulSoup package.Let us scrap and get the below links on a page −Let us also see the html structure of the above links −Let us see how to do web scraping with BeautifulSoupTo install the required package for Beautifulsoup, we should run the below commands −pip install bs4 pip install requestsExamplefrom bs4 import BeautifulSoup import requests #get all response d=requests.get("https://www.tutorialspoint.com/about/about_careers.htm") #response content whole page in html format s = BeautifulSoup(d.content, 'html.parser') #access to ... Read More

Wait for an AJAX Call to Complete with Selenium WebDriver

Debomita Bhattacharjee
Updated on 30-Jan-2021 12:01:01

2K+ Views

We can wait for an Ajax call to complete with Selenium webdriver. The determination of the load time of the page due to an Ajax response is a difficult task. This can be achieved with the help of synchronization concepts and wait methods in Selenium. Some of them are listed below −Implicit wait − It allows the web driver to wait for the time specified after which exception is thrown. This wait is applicable to all steps in the test.Syntaxdriver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);ExampleCode Implementation with implicit wait.import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; public class AjaxImplWt{    public static ... Read More

Download File at Specified Location Using Python and Selenium

Debomita Bhattacharjee
Updated on 30-Jan-2021 11:57:16

2K+ Views

We can download a file at a specified location through Python and Selenium using the chromedriver. We shall use the ChromeOptions class for this purpose. First, we shall create an object of the ChromeOptions class.Then apply the add_experimental_option method on the object created. We shall pass browser preferences and download.default_directory: as parameters to that method. Finally, this information shall be passed to the driver object.Syntaxop = webdriver.ChromeOptions() p = {'download.default_directory':'C:\Users\ghs6kor\Downloads\Test'} op.add_experimental_option('prefs', p)Examplefrom selenium import webdriver from selenium.webdriver.chrome.options import Options #object of ChromeOptions class op = webdriver.ChromeOptions() #browser preferences p = {'download.default_directory':'C:\Users\ghs6kor\Downloads\Test'} #add options to browser op.add_experimental_option('prefs', p) #set chromedriver.exe path ... Read More

Start Safari with Extension Using SafariDriver in Selenium

Debomita Bhattacharjee
Updated on 30-Jan-2021 11:55:34

810 Views

We can start Safari with extension using SafariDriver in Selenium webdriver. Safari is a prominent browser and is provided by default by Apple devices. For Safari versions 10 and greater than 10, the safaridriver comes automatically and is not required to be installed separately.The location of the SafariDriver is: /usr/bin/safaridriver. Also, it must be remembered that to work with the Safari latest version, users should have the Apple machine. This is because the Apply no longer supports Safari on Windows (from 2012).If we are using an older version of Safari in the Apple machine, we have to turn on the ... Read More

Relationship Between Selenium RC and WebDriver

Debomita Bhattacharjee
Updated on 30-Jan-2021 11:51:54

263 Views

There is a relationship between Selenium RC and Selenium webdriver. Prior to the introduction of Selenium webdriver, there was extensive usage of Selenium RC.Both the tools, supported automation tests to be executed in multiple browsers. Also, multiple programming languages can be used to implement the test cases. However, there are differences between them as listed below −FunctionalitiesSelenium RCSelenium WebdriverServerNeeds the server to trigger test execution.No need for the server to trigger test execution.Object OrientedNot much support from object oriented concepts.Majority of tests based on object oriented concepts.Dynamic LocatorsNo identification of elements with dynamic locators.Identification of elements with dynamic locators.AlertsNo support ... Read More

Advertisements