What is CP-SAT?

CP-SAT stands for “Certified Professional – Selenium Automation Testing”.

  • CP-SAT certification exam can be taken by anyone without going through the training program covering the learning objectives below.
  • CP-SAT certification exam is the only globally accepted certification exam covering practical assessment.
  • CP-SAT learning objective gives the coverage topics for anyone who want to give the exam. Any training covering the CP-SAT Syllabus would be covering the learning objectives in a practical manner.
  • CP-SAT exam can now be taken in three language streams
    1. Java
    2. C#
    3. Python

The training course provided by accredited CP-SAT license trainers is applicable for all roles and not just “testers”. Knowledge, experience & certification is consciously designed to focus on “practical aspects of testing” and not just on “theory”.

If you want to be accredited license trainer or partner get in touch with us at CPSATSupport@ATAEvents.org

How is it useful?

CP-SAT is designed to train testing professionals with the concepts of testing web applications using Selenium.
The training provided by accredited license trainers is completely hands-on covering execution of scripts using the features of Selenium with ample time given to practice until the concepts are mastered.

This syllabus and hence the training course focus on the most challenging areas for testing web applications using the latest Selenium 3.x, using JUnit and TestNG. There is an extensive coverage on Data Driven Testing, Key Word Driven Testing, Page Object Model, Selenium Grid, Continuous Integration (CI) with Jenkins and Maven.

Am I Eligible?

Anyone having basic experience Java programming and manual testing can go for this certification.

slide2

What was changed in 1.3 version?

  • ANT as a build tool has been removed
  • Headless browser execution is included
  • Maven now is the choice of build tool
  • Helper Utility class has now been included in the framework section
  • Page object Model is given more focus and time
  • Data Driven Framework Using JXL and POI library has been given more focus
  • IDE and RC/Webdrived Backed references have been completely withdrawn

What has changed in this 1.31 version?

  • Starting with this version CP-SAT is now available in three different language streams- 1. Java 2. C# and 3. Python
  • In Java stream – Use of JXL library for Data Driven Testing has been removed. Participants can use the library but it is not mandatory to know the library from this version onwards
  • Reference to some theoretical concepts including webdriver being flexible and having a lightweight API has been removed from the section “Running WebDriver tests section”.

Duration?

CP-SAT is designed specifically for corporates and working professionals alike. If you are a corporate you can opt for either 6 half days course or 3 full days course followed by an examination. Examination can be taken within 15 working days of the completion of the training.

1. Tool background and Initial Setup

  • Selenium Overview
  • Learn about the definition and usage of the tool. Get aware of the cross-language, cross-platform, cross-browser capabilities of the tool. Learn about the Selenium tool license policy. Elaborate on the two parts of the Selenium toolkit. Introduction to Selenium IDE, WebDriver and Selenium Grid. Learn the importance of test automation in the Agile and Continuous testing environment.

  • Tool Setup:
    • Learn how to setup Eclipse and Maven
      • Installation of eclipse and creation of workspace
      • Importing Maven projects
      • Learn about dependencies of the Maven goals
      • Installation of TestNG eclipse plugin
    • GIT setup (SCM Tool)

    2. Selenium IDE
    Learn about

    • Record and Playback
    • Adding of validations

    2. Locators

    • Walk through of Web Technologies
      • HTML
      • XML
      • DOM
      • CSS
    • Learn about the Structure Dependent locators:
      • XPATH
      • CSS
    • Learn about the Attributes-based locators:
      • ID
      • Name
      • Link Text
      • Partial Link Text
      • Tag Name
      • Class Name
    • Learn about the tools for locator formulation
      • Chrome developer tool and / or SelectorsHub

    3. Selenium

    1. 3.1. Setting up Selenium WebDrivers for various Browsers
      • Firefox Driver (Gecko driver)
      • Chrome Driver
      • Edge Driver
    2. 3.2. Headless browser Testing and driver capabilities
    3. Learn about

      • Headless Browser Testing
      • Learn to manage driver capabilities
    4. 3.3. Fundamental Pillars (By, WebElement, FindElement, FindElements etc.)
    5. Learn about

      • By
      • WebElement
      • FindElement
      • FindElements
      • Window switching and navigation
      • How to handle form elements
      • Keyboard user interactions
      • Capturing Screenshots
    6. 3.4. Handling Frames, Popups and Alerts
    7. Learn how to handle

      • Frames
      • Alerts
      • Popups
    8. 3.5. Synchronization
    9. Learn how important it is to use asynchronous waits rather than hard coded waits.
      Learn about

      • Implicit wait
      • Explicit waits using
        • Wait.Until
        • ExpectedConditions
    10. 3.6. Working with Advance html elements (Tables, Dynamic Tables, paginations, Context menus, mouseover, drag and drop, Dropdowns, Dynamic lists.
      • Tables
      • Dynamic Tables and Pagination
      • Using Action class (drag and drop, context click, mouse over)
      • Using Select class for Drop Downs
      • Handling Dynamic Lists / JQuery (Auto Complete)
    11. 3.7. Working with Java Script Executor and Handling exceptions
    12. Learn how to scroll on the page and how to handle exceptions like stale element exception or element not interactable exception.

      • Scrolling using Java Script Executor
      • Clicking for hidden elements using Java Script Executor
      • Understanding and handling stale element exception

    4. Unit Test Framework(s)– TestNG and Junit 5

    1. a. Test Case and Test Suite
    2. b. Prioritizing and Sequencing
    3. c. Annotations, Grouping
    4. d. Parameterization in Suit file for TestNG
    5. e. Comparison of Junit 5 and TestNG

    5. Frameworks

    1. 5.1. Data Driven Framework
    2. Data Driven Testing using

      • Excel Files (Using .xls and .xlsx)
      • CSV files
      • Json Files
    3. 5.2. Page Factory and Page Object Model
      • Importance of page object model
      • Implementing Page Object model
    4. 5.3. Helper Utility functions and Classes
    5. Understanding the importance of modularizing the reusable functions and creating a utility classes / functions.

      • For creating browser specific drivers
      • For scrolling
      • Taking screenshots
      • Common / Reusable Functions
      • Implementing Page Object model
        • Without and with PageFactory concepts
    6. 5.4. Wrapper methods
    7. Understanding the need for wrapper methods and implementing / using wrapper methods

    6. Selenium Grid

    1. 6.1. Selenium Grid on local machine
      • Learn about the built-in grid functionality in Selenium 3.x
      • Learn to distribute the tests on several machines and do parallel execution
      • Learn to run the tests in parallel on multiple combinations of browser and OS from a central hub
      • Learn to setup the Hub server
      • Learn to parameterize the tests to run on various nodes
    2. 6.2. Selenium Grid on cloud machine using Docker
      • Learn how to create Selenium Grid on cloud machine
      • Understand the basics of Docker containers
      • Using docker compose creating Grid
      • Learn how to distribute the tests on the remote docker grid

    7. Test Reports using Allure and TestNG

    1. 7.1. Using Allure for Reporting
    2. 7.2. TestNg Reports

    8. Running Selenium Tests in Continuous Integration Environment

    1. 8.1. Using Cloud based Jenkins server with Maven plugin
    2. 8.2. Triggering tests on code push to Git repository

1. Tool background

  1. 1.1. History of Selenium (30 mins)
    • The participant learns about the history of the tool, its evolution and the need for it.
  2. 1.2. Selenium Overview (30 mins)
    • Learn about the definition and usage of the tool. Get aware of the cross-language, cross-platform, cross-browser capabilities of the tool. Learn about the Selenium tool license policy. Elaborate on the two parts of the Selenium toolkit
    • Selenium 3.x
      • Selenium WebDriver
    • Selenium Grid
      • Need for Grid
      • Parallel execution of tests

2. Locator Strategies (60 mins)

  • Learn the concept of DOM
  • Learn about the Structure Dependent locators:
    • XPath
    • CSS
  • Learn about the Attributes-based locators:
    • Id
    • Name
    • Link Text
    • Partial Link Text
    • Tag Name

3. Selenium Server

  1. 3.1. Selenium 3.x (WebDriver) (420 Mins)
    • Setting up your .Net environment (30 mins)
      • Creation of .Net Project
      • Creation of the Source Folders, Packages and Resource Folders
      • Debugging and Running the tests
  2. 3.2. Nunit (30 Mins)
    • Learn about the need of the testing frameworks
    • History of NUnit
    • Running tests using NUnit
    • Running WebDriver Tests (30 mins)
      • New features of WebDriver 3.x
      • Limited methods, more flexibility to create new methods
      • Lightweight API
      • Wrapper methods for missing commands
      • JavaScript execution
    • Implicit and Explicit Wait in Selenium 3.x (15 mins)
    • Running JavaScript code (30 mins)
    • Test Suite creation using Nunit (30 mins)
  3. 3.3. Various WebDriver implementations (90 mins)
    • Firefox Driver (Gecko driver)
    • Chrome Driver
    • Edge Driver
    • Headless Browser Testing
    • Learn to manage driver capabilities
  4. 3.4. Advanced User Interaction (150 mins)
    • Keyboard
    • Action Builder
    • Handling popups
    • Handling alerts
    • Capturing Screenshots
    • Drop Downs
    • JQuery (Auto Complete)
    • Drag and Drop

4. Framework

  1. 4.1. Testing Frameworks (460 mins)
    • Data Driven Framework using WebDriver (210 mins)
      • For Excel (Using .xls and .xlsx
    • Keyword Driven Framework using WebDriver (30 mins)
      • Setting Up Keyword Driven Framework
      • Setting Up Data Engine
      • Test Suite Execution
      • Log Generation
    • Page Factory and Page Object Model (120 mins)
    • Helper / Utility framework class

5. Selenium Grid

  1. 5.1. Selenium Grid Concept and Practical Setup (60 mins)
    • Learn about the built-in grid functionality in Selenium 3.x
    • Learn to distribute the tests on several machines and do parallel execution
    • Learn to run the tests in parallel on multiple combinations of browser and OS from a central hub
    • Learn to setup the Hub server
    • Learn to parameterize the tests to run on various nodes
    • Learn to override the default parameters on the nodes

6. Running Selenium Tests in Continuous Integration environment (120 Mins)

  1. 6.1. Concept of Continuous Integration (30 mins)
    • Learn about the concept of Automating the Automation
    • Learn about the Continuous Integration practice and merging automated Selenium test scripts on CI server
  2. NUget/MSBuild task in Jenkins/Hudson (90 mins)
    • Learn to prepare Jenkins/Hudson to run NUGet/MSBuild task with Selenium tests
    • Learn various triggering events for the test
    • Learn to prepare test output reports

7. Automation in Agile projects (Reading)

  1. 7.1. Agile Manifesto
  2. 7.2. Agile in Practice (Video)
  3. 7.3. Incremental and Iterative development
  4. 7.4. Scrum – Testing in iterations
  5. 7.5. Testing challenges in Agile
  6. 7.6. Test Automation

8. Practical Selenium Automation Testing (Exercises)

  • Practice all Selenium concepts throughout the course using various practical case studies.
  • Practical Exercises post completion of the program

1. Tool background and Initial Setup

  1. 1.1 Selenium Overview
    Learn about the definition and usage of the tool. Get aware of the crosslanguage, cross-platform, cross-browser capabilities of the tool. Learn about
    the Selenium tool license policy. Elaborate on the two parts of the Selenium
    toolkit. Introduction to Selenium IDE, WebDriver and Selenium Grid. Learn
    the importance of test automation in the Agile and Continuous testing
    environment.
  2. 1.2 Tool Setup
    • Learn how to setup Eclipse and PyDev
      • Installation of eclipse and creation of workspace
      • Creating Python Project
    • GIT setup (SCM Tool)

2. Selenium IDE
Learn about

  1. 2.1 Record and Playback
  2. 2.2 Adding of validations

2. Locators

  • Walk through of Web Technologies
    • HTML
    • XML
    • DOM
    • CSS
  • Learn about the Structure Dependent locators:
    • XPath
    • CSS
  • Learn about the Attributes-based locators:
    • Id
    • Name
    • Link Text
    • Partial Link Text
    • Tag Name
    • Class Name
  • Learn about the tools for locator formulation
    • Chrome developer tool and / or SelectorsHub

3. Selenium

    1. 3.1. Setting up Selenium WebDrivers for various Browsers
      • Firefox Driver (Gecko driver)
      • Chrome Driver
      • Edge Driver
    2. 3.2. Headless browser Testing and driver capabilities

Learn about

      • Headless Browser Testing
      • Learn to manage driver capabilities
    1. 3.3. Fundamental Pillars (By, WebElement, FindElement, FindElements etc.)

Learn about

      • By
      • WebElement
      • FindElement
      • FindElements
      • Window switching and navigation
      • How to handle form elements
      • Keyboard user interactions
      • Capturing Screenshots
    1. 3.4. Handling Frames, Popups and Alerts

Learn how to handle

      • Frames
      • Alerts
      • Popups
    1. 3.5. Synchronization

Learn how important it is to use asynchronous waits rather than hard coded waits.
Learn about

      • Implicit wait
      • Explicit waits using
        • Wait.Until
        • ExpectedConditions
    1. 3.6. Working with Advance html elements (Tables, Dynamic Tables, paginations, Context menus, mouseover, drag and drop, Dropdowns, Dynamic lists.
      • Tables
      • Dynamic Tables and Pagination
      • Using Action class (drag and drop, context click, mouse over)
      • Using Select class for Drop Downs
      • Handling Dynamic Lists / JQuery (Auto Complete)
    2. 3.7. Working with Java Script Executor and Handling exceptions

Learn how to scroll on the page and how to handle exceptions like stale element exception or element not interactable exception.

    • Scrolling using Java Script Executor
    • Clicking for hidden elements using Java Script Executor
    • Understanding and handling stale element exception

4. Unit Test Framework(s)– PyUnit

  1. a. Test Case and Test Suite Creation
  2. b. Executing
  3. c. Adding Validations

5. Frameworks

    1. 5.1. Data Driven Framework

Data Driven Testing using

      • Excel Files (Using .xls and .xlsx)
      • CSV files
      • Json Files
    1. 5.2. Page Factory and Page Object Model
      • Importance of page object model
      • Implementing Page Object model
    2. 5.3. Helper Utility functions and Classes

Understanding the importance of modularizing the reusable functions and creating a utility classes / functions.

      • For creating browser specific drivers
      • For scrolling
      • Taking screenshots
      • Common / Reusable Functions
      • Implementing Page Object model
        • Without and with PageFactory concepts
    1. 5.4. Wrapper methods

Understanding the need for wrapper methods and implementing / using wrapper methods

6. Selenium Grid

  1. 6.1. Selenium Grid on local machine
    • Learn about the built-in grid functionality in Selenium 3.x
    • Learn to distribute the tests on several machines and do parallel execution
    • Learn to run the tests in parallel on multiple combinations of browser and OS from a central hub
    • Learn to setup the Hub server
    • Learn to parameterize the tests to run on various nodes
  2. 6.2. Selenium Grid on cloud machine using Docker
    • Learn how to create Selenium Grid on cloud machine
    • Understand the basics of Docker containers
    • Using docker compose creating Grid
    • Learn how to distribute the tests on the remote docker grid

7. Test Reports using Allure

  1. 7.1. Using Allure for Reporting

8. Running Selenium Tests in Continuous Integration Environment

  1. 8.1. Using Cloud based Jenkins server
  2. 8.2. Triggering tests on code push to Git repository
  1. What is CP-SAT Certification
    • CP-SAT stands for “Certified Practitioner – Selenium Automation Testing” the most renowned globally recognized certificaton in Selenium
  2. Is this a globally recognized certificate?
    • Yes. CPSAT is the worlds only certificate which has practical assessments and can be taken in any of the three technologies – JAVA, C# and Python. CPSAT certified professionals are there across the globe. ATA is now having presence across 24 countries across the globe.
  3. Can I appear the examination directly without undergoing some formal training from ATA?
    • Yes, by just paying the applicable examination fees, you can appear for the CP-SAT examination.
  4. What is the examination pattern?
    • The examination consists of 2 sections, Theory and Practical Theory Examination 1 hr (40 Questions / 60 mins). No negative marking Practical Examination is now 150 minutes (With effect from 20th July 2020). You can expect anywhere from 6 to 7 questions in total.
  5. Does ATA provide with mock questions for the examination?
  6. Does ATA provide the evaluation of the mock examination?
    • No, The mock exams are for you to practice and perform a self review. Please note that the exam has a fixed time duration, when you practice please keep a tab on this duration. ATA keeps on adding blogs with few solutions to these mock exams and other challenges. You can find them on the following URL. http://cpsat.agiletestingalliance.org/#blogs
      If you get stuck and not able to find a solution, please get in touch with us and we will help you.
  7. How long is the certificate valid?
    • The certificate is valid for 5 years
  8. When is the result of the examination declared?
    • The result for the examination is released with 7-10 working days
  9. When will you receive the copy of the certificate?
    • Once the result has been declared by ATA, the digital copy of the certificate will be mailed to you within 2 working days.
  10. What are the fees for the certification?
    • CPSAT fees is now reduced to 80 USD / INR 5500/ depending on where you are taking the exam applicable taxes will be extra.
  11. What are the re appearing charges?
    • The re examination charges are 30 USD or INR 2100/- (+Taxes). (Any subsequent attempts the reappearing fees will be applicable).
  12. Does an individual have to re appear the entire examination?
    • No, the participant just has to appear in the examination in which they haven’t cleared.
  13. Discounts for Corporate Registrations?

CP-SAT Practical Exam time has now been increased from
120 minutes to 150 minutes

(With effect from 20th July 2020)