Skip to main content

Cypress-Page-Object-Model Framework

 

Cypress-Page-Object-Framework

Cypress: a JavaScript End to End testing framework.

Benefits of Cypress :-

1.    Cypress is also able to intercept AJAX request and provide fake responses. This approach is known as stubbing.

2.    Cypress is a Node server process. Cypress and the Node process constantly communicate, synchronize, and perform tasks on behalf of each other.

3.    Modify DOM elements directly - like forcing hidden elements to be shown

4.    Control time by moving forward or backward so that timers or polls automatically fire without having to wait for the required time in your tests

5.    Cypress operates within your application, that means it has native access to every single object. Whether it is the window, the document, a DOM element, your application instance, a function, a timer, a service worker, or anything else - you have access to it in your Cypress tests. There is no object serialization, there is no over-the-wire protocol - you have access to everything.


Cypress page object model automation framework using cypress, Javascript.

CodeBase : https://github.com/Ashishjublsdet/Cypress-Page-Object-Framework

Installing Cypress

Install Cypress via npm:

cd /your/project/path
npm install cypress --save-dev

**Installing Cypress Xpath **

cd /your/project/path
npm install -D cypress-xpath

After Installing add below line in support/index.js file

require('cypress-xpath')

Steps to Setup

1. Clone the application

git clone https://github.com/Ashishjublsdet/Cypress-Page-Object-Framework.git 

2.Go to project Directory

cd Cypress-Page-Object-Framework

**3.Run **

npm run test

**Configure test in Cypress **

Add below line in Cypress.json and you can change you test location 

{"integrationFolder":"cypress/Tests"}

Project Structure

Package & Classes Details

Pages : In this package all the pages of application is present.

HomePage

Tests : In this package all the TestCases is present.

TestCase

Integrated Mocha Framework for Reporting

Comments

Popular posts from this blog

Appium architecture (How Appium works internally)

Appium Architecture  A ppium is a cross-platform automation tool, API of it supports both OS (Android and iOS) test scripts.It is tested on simulators (iOS,), emulators (Android), and real devices (iOS, Android)   Appium is an HTTP server written in Node.js that creates and handles WebDriver sessions.The Appium web server follows the same approach as the Selenium WebDriver, which receives HTTP requests from client libraries through JSON and then handles those requests in different ways   JSON wire protocol The JSON wire protocol  ( JSONWP ) is a transport mechanism created by WebDriver developers. This wire protocol is a specific set of predefined, standardized endpoints exposed via a RESTful API.   Appium implements the Mobile JSONWP, the extension to the Selenium JSONWP, and it controls the different mobile device behaviors, such as installing/uninstalling apps over the session Let’s have a look at some of the endpoints from the API whi...

Handle radio button & Check Boxes in Selenium

The main difference between Radio button and Checkbox is that, using radio button we will be able to select only one option from the options available. whereas using checkbox, we can select multiple options. Selenium WebDriver supports Radio Button and Radio Group controls using the WebElement class. We can select and deselect the radio buttons using the click() method of the WebElement class and check whether a radio button is selected or deselected using the isSelected() method. Before performing the click on the Radio buttons or check boxes we will have to verify follwing scenarios :- If Radio button or Checkbox is displayed on the webpage If Radio button or Checkbox is enabled on the webpage Check the default selection of the Radio button or Checkbox We use predefined methods present in selenium to handle check Box and Radio  button :- isDisplayed() isEnabled() isSelected() 1.  isDisplayed () this method returns a Boolean value, i...

Automate Angular JS Application using Protractor

The "Protractor" is an automation testing tool for web applications testing; combining powerful technologies such as Jasmine, Selenium Webdriver, Node.js etc. About Angular JS Application :- AngularJS is a framework that is gaining in popularity because it extends the functionality of HTML and can be used to quick launch applications. The frameworks follows basic HTML & offers extension (in the form of directives) which has the capability to make the web site truly responsive & dynamic. It follows the DOM methodology which focuses primarily on improvising testability & performance Protractor Introduction : Protractor is a Node.js program.The first version of Protractor was released in July, 2013, when the framework was basically a prototype of a testing framework. However, Google, with the support of the testing community, is evolving the framework to follow the evolution of AngularJS and to meet the needs of the community that is using Angular...