We can click on a link using Selenium webdriver in Python. A link is represented by the anchor tag. A link can be identified with the help of the locators like - link text and partial link text.We can use the link text attribute for an element for its identification and utilize the method find_element_by_link_text. With this, the first element with the matching value of the given link text is returned.Syntaxdriver.find_element_by_link_text("value of link text")We can also use the partial link text attribute for an element for its identification and utilize the method find_element_by_partial_link_text. With this, the first element with the ... Read More
We can select an option in a static dropdown in Selenium webdriver. Selenium can handle static dropdowns with the help of the Select class. A dropdown is identified with select tagname and its options are represented with the tagname option. The statement - from selenium.webdriver.support.select import Select should be added to work with Select class.Methods under the Select class are listed below −select_by_visible_text (arg) – it shall select all the options which displayed text matches with the argument.Syntax−sel = Select (driver.find_element_by_id ("name")) sel.select_by_visible_text ('Visible Text')select_by_value (arg) – it shall select all the options having a value that matches with the ... Read More
Selenium supports headless execution. In the Chrome browser, the headless execution can be implemented with the help of the ChromeOptions class. We have to create an object of this class and apply the add_arguments method to it. Finally, pass the parameter --headless to this method.Let us obtain the title - About Careers at Tutorials Point - Tutorialspoint of the page launched in a headless mode −ExampleCode Implementationfrom selenium import webdriver from selenium.webdriver.chrome.options import Options #object of Options class c = Options() #passing headless parameter c.add_argument("--headless") #adding headless parameter to webdriver object driver = webdriver.Chrome(executable_path='../drivers/chromedriver', options=c) # implicit wait time driver.implicitly_wait(5) ... Read More
We can work with the id locator in WebdriverIO. Once we navigate to a webpage, we have to interact with the web elements available on the page like clicking a link/button, entering text within an edit box, and so on to complete our automation test case.For this, our first job is to identify the element. We can use the id attribute for an element for its identification. It is a very useful locator and speeds up the execution of automation tests in comparison to all the locators.In the WebdriverIO code, we have the option to specify the value of the ... Read More
WebdriverIO can perform mouse operations like drag and drop using the dragAndDrop method. With this, we execute clicking and holding events on the present object(source), then pass the object to the target element. Finally, release the mouse.Syntaxlet p = $('#loc') let t = $('#target') p.dragAndDrop(t)Here, p is the source locator and t is the destination locator.Let us perform the drag and drop functionality for the below elements −In the above image, the element with the name - Drag me to my target has to be dragged and dropped on the element - Dropped!.ExampleCode Implementation// test suite name describe('Tutorialspoint application', function(){ ... Read More
We can implement tags in Cypress. Cypress has tags - .only and .skip. While the .only tag is utilized to execute the it block to which it is tagged, the .skip tag is utilized to exclude the it block to which it is tagged.ExampleImplementation with .onlydescribe('Tutorialspoint', function() //it block with tag .only it.only('First Test', function() { cy.log("First Test") }) //it block with tag .only It.only('Second Test', function() { cy.log("Second Test") }) it('Third Test', function() { cy.log("Third Test") }) })Execution ResultsThe output ... Read More
We can implement hooks in Cypress. Cypress Hooks are used to carrying out certain operations prior/post every/each test. Some of the common hooks are −before – Executes once prior execution any tests within a describe block.after – Executes once post-execution all tests within a describe block.beforeEach – Executes prior execution of the individual it blocks within a describe block.afterEach – Executes post-execution of the individual it blocks within a describe block.ExampleImplementationdescribe('Tutorialspoint', function() { before(function() { // executes once prior all tests in it block cy.log("Before hook") }) after(function() { ... Read More
The below diagram explains the working of the Cypress −Automation tools like Selenium work by running outside the browser. However, Cypress has a different architecture. It runs within the browser. Cypress is based on the server - Node.js.There is a continuous interaction of Cypress with the Node.js and they work in – coordination with each other. As a result, Cypress can be utilized for testing both the front and backend of the application.Cypress is thus capable of handling the tasks performed in a real-time on the UI and simultaneously perform actions outside of the browser. The basic differences between Cypress ... Read More
We can handle frames in Puppeteer. The frames in an html code are represented by the frames/iframe tag. Puppeteer can handle frames by switching from the main page to the frame. To work with elements inside a frame, first, we have to identify the frame with the help of locators. The method contentFrame is used to access the elements inside the frame.Syntaxconst f = await page.$("frame[name='frame-bottom']") const m = await f.contentFrame()Let us see the html code of an element inside a frame and obtain the text - BOTTOM inside it.The tagname highlighted in the above image is frame and the ... Read More
We can handle tabs in Puppeteer using the below methods −newPage() - We can open a new tab using this method available in the browser object.Syntaxconst p = await browser.newPage()close() - We can close the tab opened using this method.Syntaxawait p.close() close() - We can close all the tabs opened using this method available in the browser object.Syntaxawait browser.close()ExampleCode Implementation//adding Puppeteer library const pt = require('puppeteer') pt.launch().then(async browser => { //browser new page const p = await browser.newPage(); //set viewpoint of browser page await p.setViewport({ width: 1000, height: ... Read More
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP