Selenium Test Life Cycle
Selenium Test Life Cycle Phases :
i) Test Planning
ii) Generating Basic Tests
iii) Enhancing Tests
iv) Running as well as Debugging Tests
v) Analyzing Test Results as well as Reporting Defects
------------------------------------------------
i) Test Planning
> Get Application Environment (UI Design Technology, Database) Details from evolution team.
> Analyze the AUT (Application Under Test) inwards damage of Object Identification.
Using Recording characteristic inwards Selenium IDE
Using Firebug as well as Firepath plug ins(Mozilla Firefox) nosotros tin inspect elements.
> Select Test Cases for Automation
Tests that nosotros bring to execute on every construct (Sanity Tests)
Tests that nosotros bring to execute on every modified build(Regression Tests)
Tests that nosotros bring to execute amongst multiple sets of Test Data(Data Driven Tests).
> Select Testing Framework(JUnit/TestNG) as well as Implement.
------------------------------------------------
ii) Generating Basic Tests
In UFT:
1) Object Repository based Test Design (Recording, Keyword driven methodology)
2) Descriptive Programming/Programmatic Descriptions
In Selenium:
1) Selenium IDE
a) Using Recording
b) Type Test steps using Element locators as well as Selenium IDE/Selenese Commands.
2) Selenium WebDriver
Using Element Locators as well as WebDriver methods.
------------------------------------------------
iii) Enhancing Test cases
1) Inserting Verification Points
UFT:
Using UFT Checkpoints Or Using VBScript Conditional Statements
Selenium IDE:
Using Assert/Verify Commands
Selenium WebDriver
a) Using Java Conditional Statements
b) Using TestNG Assertion Methods
2) Parameterization
Replacing constant (fixed) values using Parameters(Variables/Function Parameter etc...)
We purpose Parameterization inwards Data driven Testing.
What is Data Driven Testing?
Testing same Functionalities using multiple sets of Test Data.
Why Data Driven Testing?
For Positive as well as Negative Testing.
-------------------
Using Loop Statements as well as whatever files.
3) Synchronization
What is Synchronization?
How to Synchronize Selenium amongst AUT?
4) Error Handling
Handling expected as well as unexpected errors.
5) Adding Comments (Optional)
Etc...
------------------------------------------------
iv) Running as well as Debugging Tests
Running/Executing Tests (Mandatory)
Single Test Run
Test Batch Run/Batch Testing.
Using Testing Framework(JUnit/TestNG) nosotros tin acquit batch Testing.
-----------------------
Debugging Tests (Optional)
What is debugging?
Locating as well as isolating Errors thru Step yesteryear Step execution.
When Debugging is Required?
Scenario 1: Test example is non showing whatever errors as well as providing right output-Debugging is non required.
Scenario 2: Test example is showing errors-Debugging is Optional.
Scenario 3: Test example is non showing whatever errors as well as non providing right output-Debugging is Required.
x = a * b
------------------------------------------------
v) Analyzing Test Results as well as Reporting Defects
Analyzing Test Results
Selenium doesn't supply detailed Test Reports(Summary only).
Using either JUnit or TestNG nosotros tin expire detailed Test Reports.
---------------
Status of Test Results inwards Functional Test Automation
1) Pass (If expected = Actual)
2) Fail (If expected Not equal Actual)
3) Done (If at that topographic point is no verification inwards a Test case)
4) Warning (if whatever respite during Test execution)
-----------------------------------------------
Reporting Defects:
Selenium doesn't integrate amongst whatever tool for Test management /Defect management.
Functional Test Automation Vs. Defect management
------------------------------------------------------
Selenium Manual
--------------------------------------------------
Selenium Bugzilla/Jira etc...
-------------------------------------------------
Selenium Tools - Open Source
Eclipse IDE - Open Source
Java - Open Source
JUnit / TestNG Framework -Open Source
Bugzilla for Defect management - Open Source.
-----------------------------------------------