Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

TSL Course Content

TSL Course Content

Objectives of this Course:


• To understand the role of Database in our applications
• To understand the role of Java technology in modern application development
• To understand importance of testing and testing phases in Software development
• To understand importance of Manual Testing
• To understand importance of Automation Testing
• To understand challenges of testing modern web applications
• To understand frameworks like Selenium and jUnit/TestNg for automation of test
cases
• To understand importance of BDD techniques and Cucumber
• To understand importance of tools like JIRA and
• To understand importance of DevOps & various tools like Git, Maven, Jenkins &
others

Prerequisites:
• Basic Knowledge of Programming Techniques

Agenda:

Module Duration (Days)


Bootcamp Phase
Communication Skills 3
RDBMS 3
Core Java 5
Manual Testing - ISTQB 3
Specialization Phase
Selenium Testing 6
Jira, Cucumber, API
3
Testing
DevOps 3
Project Phase
Project Gladiator 5
TSL Course Content

Boot Camp Phase


Communication Training (3 Days)
o Spread across 3 weeks / 1 day per week

RDBMS
Duration: 3 Days

DBMS – DBMS Concepts and SQL


o Introduction to Databases
o Database Models
o Relational Model
o Data Design and Normalization
o Structured Query Language and its categories
o DDL – DML – DQL – DCL – TCL
o SELECT statement varieties with clauses
o WHERE clause
o GROUP BY clause
o HAVING clause
o ORDER BY clause
o Using Oracle built in Functions
o Joining the tables – Join variants
o Equi and Non-Equi Joins
o Self-Join
o Cartesian Product
o Outer Join
o Subqueries
o Implementing Views
o Implementing Data Integrity by using Constraints
o Data Integrity Overview
o Creating Constraints
o Implementing Constraints
o Not Null
o Unique Key
o Primary key
o Check Constraints
o Default
o Foreign Key
o Implementing Stored Procedures and Functions

Core Java
Duration: 5 Days

Java Basics
o Describe the features of Java
o Describe the real-world applications of Java
TSL Course Content

o Describe the Java Development Kit (JDK) and the Java Runtime Environment (JRE)
o Describe the components of a basic Java program
o Compile and execute a Java program

Working with Java Data Types


o Declare and initialize variables (including casting of primitive data types)
o Differentiate between object reference variables and primitive variables
o Develop code that uses wrapper classes such as Boolean, Double, and Integer
o Declare, instantiate, initialize and use an array

Java Flow Control


o Branching
o Switching
o Looping
o Using Foreach

Object Oriented Programming


o Characteristics of Object-Oriented Programming
o Classes and Objects
o Packages
o Constructor
o Properties
o Inheritance
o Access Modifiers
o Abstract classes and methods
o Static, this, super and final keyword
o Interfaces

Exception Handling
o Checked vs. Unchecked Exceptions
o Built in Exceptions
o Handling Exceptions
o Custom Exception classes
o Throwing exceptions

Working with Selected classes from the Java API


o Manipulate data using the StringBuilder class and its methods
o Create and manipulate Strings
o Using Java SE 8 Date/Time API

Generics and Collections


o Create and use a generic class
o Create and use List, Set and Map
o Sorting data in collection
o Collections Streams and Filters
o Iterate using forEach methods of Streams and List
TSL Course Content

Building Database Applications with JDBC


o Describe the interfaces that make up the core of the JDBC API including the Driver,
Connection, Statement, and ResultSet interfaces and their relationship to provider
implementations
o Identify the components required to connect to a database using the DriverManager
class including the JDBC URL
o Submit queries and read results from the database including creating statements,
returning result sets, iterating through the results, and properly closing result sets,
statements, and connections

Manual Testing
Duration: 3 Days

o Introduction to Testing
o What is testing?
o Why to do Testing?
o Why Testers are required?
o Software Development Life Cycle & Types
o Software Testing Life Cycle (Fundamental Test Process)
o Cost of Quality
o QA, QC & QMS
o Verification & Validation
o Difference between Verification & Validation
o Techniques of Verification
o Techniques of Validation / Levels of Testing
o Life Cycle Testing
o V-model
o Types of Testing
o Testing Related to Change
▪ ReTesting/ Confirmation Testing
▪ Regression Testing
o Testing Related to Function
▪ Smoke Testing
▪ Sanity Testing
o Testing Related to Non-Function
▪ Performance Testing
▪ Compatibility Testing
▪ Usability Testing
▪ User Interface Testing
o Test Planning
o What is need of Test Planning
o When to start Test Planning
o IEEE 829 format of Test Planning
TSL Course Content

o Test Design Techniques


o Black Box Test Design Techniques
o White Box Test Design Techniques
o Defect Management
o What is Defect & its Type
o Severity & Priority of Defect
o Defect Life Cycle
o Defect Reporting Attributes
o Tools for Defect Reporting

Assessment + Mini Project + Mock Client Interview

Specialization Phase

Selenium
Duration: 6 Days

Introduction to Selenium
o Selenium overview
o Selenium Fundamentals
o Selenium components - IDE, Server, Grid
o Difference Between RC and WebDriver

Locators in Selenium
o Concept of DOM and Webtables
o Selenium Locator Strategies
o Locator and DOM related tools
o Structure dependent and attributes based locators
o Installing and Configuring Selenium WebDriver in Eclipse
o Various flavors Chrome, IE and Firefox
Handling
o Handling JavaScript alerts()
o Windows
o iframes
Handling AJAX and Test Synchronization using
o Implicit wait
o Explicit wait
WebDriver in various scenarios
o Handling common objects such as Checkbox, Radio buttons,
Dropdown,Autocomplete
o Dealing with mouse hover in WebDriver
o WebDriver user defined actions and keyboard entries
o Controlling browser attributes and navigation
o Validating on CSS attributes of objects
o Find broken images/links in website
o Reading test related variables from properties file
TSL Course Content

o JavaScript action for scroll


Data-Driven Testing:
o Using Excel
o Using DataBase
o Using CSV
Page Object Model & Page Factory
o Page Factory and POM for better maintenance and reusability
o Combing Page Factory with Data driven test
o Updating the existing tests in POM model
Maven
o Maven Introduction
o Installing Maven
o Adding dependencies using pom.xml

TestNG & Junit:


o Using TestNG to
▪ Selectively run tests,
▪ Run tests in parallel on different browsers
▪ Grouping & prioritizing tests
▪ Using data provider with excel integration to read data for data
parameters in tests
▪ Test Fixtures and Annotations
▪ Taking screenshots and trigger on error
▪ TestNG Test Suites
o Using Junit to:
▪ Create Junit Test
▪ Creating Junit Test Suites
Reports
o TestNG Report
o Using Extent reports for reporting results including writing test step
results to the report
Testing Frameworks for Selenium:
o Data-Driven Testing
o Keyword Driven Testing
o Hybrid Framework concepts
o Difference between Keyword driven and Hybrid Frameworks
o Reporting results back to the framework
TSL Course Content

Cucumber, JIRA, API


Duration: 3 Days

Selenium & BDD with Cucumber


Cucumber
o What is Cucumber Testing Tool?
o Downloading & Installing cucumber
o What is Feature File & Step Definition
o What is Gherkin & write Gherkin Test in Cucumber
o Writing Cucumber Script
o Selenium Integration with Cucumber BDD
o Passing Parameters in cucumber Scripts
o Performing Data-Driven Testing in Cucumber-Selenium

API Testing:
o Introduction to Web Service & API
o Tools available for API Testing

• Postman
▪ Download & Install PostMan
▪ Postman Navigation
▪ Create Requests in Postman
▪ Passing Parameters in PostMan
▪ Basic Authentication in PostMan
▪ Environment Variables & Collections in PostMan
▪ How to debug & Run from command Line
• Rest Assured
▪ Configuring Eclipse with Rest-Assured
▪ Making Simple Get Requests
▪ Validate Response status code, Header, & Body using Rest Assured
▪ Making Post Request using Rest Assured
▪ Authentication & Authorization
▪ JSON basic

JIRA
o Introduction to Jira & How to use Jira on Cloud
o How to Create Project & How to add users in Jira
o How to create Epic & User stories
o Create Sprint in JIRA & Adding User stories to sprint
o Create Test Cycles, Update Test Cases & checking Test Reports
TSL Course Content

DevOps
Duration: 3 Days

Overview of Dev-Ops & Git


o Application Lifecycle Management
o Traditional Responsibility Silos
o What is DevOps
o Developers Role
o Testers Role
o Operations Role
o Continuous Integration
o Continuous Deployment
o The Workflows:
o Continuous Integration
o Continuous Build
o Continuous Delivery & Deployment

DevOps – Git
o Git Overview
o Git Installation
o Git Basics
o Git Merge
o Git Branches
o Git Workflows
o Git Hosting

DevOps - Deployment (Maven)


o Maven Installation
o Maven Basics
o Maven Demo
o Maven Eclipse Demo
o Maven lifecycle
o Maven Repositories
o Multi-Module projects
o Maven Summary
o Create a maven project

DevOps – Jenkins
o Jenkins Installation
o Jenkins Basics
o Jenkins Distributed Builds
o Create Jenkins Job

Assessment
TSL Course Content

Project Gladiator Phase


Duration: 5 Days

Project Gladiator
Project Gladiator Evaluation

You might also like