Introducing
Your new presentation assistant.
Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.
Trending searches
Khaled Monir
Automation Test Engineer
Course Description
Products and Technologies
Target Audience
Course Work Flow
Automation Testing
Automation Tools Comparison
1. Menu bar
2. Properties window
3. Document tab
4. Solution Explorer
5. Toolbox tab
6. Output tab
7. Active Screen
8. Data tab
Example:
Here are the Test Steps for this Scenario
Test Step 1) Open Flight Reservation Application
Test Step 2) Enter Valid Agent Name
Test Step 3) Enter Valid Password
Test Step 4) Press Ok
Test Step 5) Close Application After Successful Login.
UFT provides us to pick different test inputs at a run time. This process of providing different input values through external parameters is called as parametrization.
Types of parameterization in QTP:
1. Data Table parameters
2. Test/Action parameters
3. Environment variable parameters
4. Random number parameters
Data Driver
Definition: is Checking if the Actual Results is equal to the Expected Result
Types:
1. Text Check point
2. Text Area check point
3. Standard Check point
4. Bitmap Check point
Output Check points
5. Standard Output check point
6. Text Output check point
QTP stores Object and its properties in the Object Repository to identify them during run-time.
An Object could have a large number of properties associated with it. For example, in Web Environment, a Button could have the following properties associated.
* Introduction to Object Repository:
- Object Repository is a collection of Test Objects and information that is recognized by UFT for working on it. When a user records a test, the objects and their properties are captured by default.
>Rename Objects
>Add Objects/Update(without Recording)
Types:
1. Local Repo
2. Shared Repo
- Object SPY
Types:
1. Built In Variables
2. User Defined
Syntax:
.set environment("AgentName")
.set environment("variableName")
Benefits of Using Functions:
1. Reusable
2. Save time and effort
Web Driver
Environment Setup
Object:
Method:
Objects and methods are located inside a class
Class:
Example:
Dog has state(Name, Color)
Behavior(jump-Run)
English Course Demo
Four Types:
1. Public
2. Protected
3. No Modifiers
4. Private
VARIABLE:
DATA TYPES:
Variables:
Declaration
Initialization
Declare the string:
String Name="khaled";
Define the String Length:
String Name="khaled";
Int len=Name.length();
system.printline("The name length is: "+ len)
Con-Catenation: using +
If A class inherits a methods from its super class, then there is a chance to override the method provided that it is not marked final.
Advantage of overriding is ability to define behavior that's specific to the subclass type.
OVERLOADING DEMO
Maven is a very powerful and widely used java project management and build management tool.
Features:
1. Its provide support for test life cycle in automation projects.
2. Allow settings up the execution of the environment.
3. Manage all related dependencies using the POM.XML
4. The ability to download the project dependencies automatically from the central DB.
Example: you are using selenium version 2.53 which we later updated to a newer version.
Now imagine the you want to update more than one jar files, so there is a probability to delete file by mistake or forget to update any kind of them.
SO the Rescue Point in MAVEN in POM XML
TESTNG
TESTNG
TestNG Provides Annotations:
1. They Are easier to understand
2. You can group the test cases using appropriate annotations
3. you can do parallel testing .
4. you can pass extra parameters to annotations
Live Demo
PRIORITIZATION:
The parameter used here @Test(priotty=1)
DISABLING TEST CASES:
The parameter used here @test(priorty=1, enabled=true/false)
METHOD DEPENDENCY:
The parameter used here @test(dependsOnMethods={""})
<groups>
<run>
<include name=" ">
Syntax:
Assert.assertEquals(actual,Expected)
Use Browser Tools for inspecting Element on Page, and begin to take Actions on these elements.
https://the-internet.herokuapp.com/login
Selenium WebDriver API provides access to the (back/forward/refresh/reload).
Selenium is using special class called SELECT CLASS
In the HTML Called <Select>
If Selenium didn't find the web element that he is search for, selenium will wait for a specific time to find it...if not it will throw exception!!!
http://cookbook.seleniumacademy.com/AjaxDemo.html
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
If Selenium didn't find the web element that he is search for, selenium will wait for a specific time to find it...but this time if the condition=true/false
WebDriverWait wait= new WebDriverWait(driver, 20);
Record and Play
Spaghetti Pattern
Data Driven
POM-Page Object Model
Dry Testing Pattern