DDF Framework TestNG
DDF Framework TestNG
We use data driven framework in organization because once test data are
separated from test case it can easily modified for specific functionality without
changing the code.
We use excel, .csv, property File to store data.
Maven project:
We use maven in our framework because it provides structure format, build,
execution and dependency.
Maven provides the standard folder structure in src/main/java we store all pom
classes and library files (base class utility class).
Maven life cycle
1.default: handle project deployment
2.clean: project cleaning
3.site: creation of projects website
in src/test/java we store all test class.
In maven pom.xml file use to add the dependency.
All the downloaded jar file store in the maven dependency folder.
In our framework super most class is base class which is extended to each test
class this is nothing but inheritance in our framework.
To design test script, we use java as programming language and selenium as
tool.
Property file: -
In our framework we use property file to store login credential and URL
Log4J jar file:
We use Log4j jar to store logs of the execution
Every time log4j generate new file
Txt file
Extent reporter jar file: -
In our project to generate the report we use extent reporter
Every time extent reporter generates new report
We can attach fail testcase screenshot to test cases.
Utility class:
To create selenium related common function we use utility class.
Screenshot, get Test Data, get Property data
GitHub repository:
We use GitHub repository to maintain source code of framework.
Jenkins ci tool: -
For scheduling
Github
GitHub Repository
1 project =1 repository
Hashtable HashMap
1. legacy class not legacy class
--------------------------------------
4. Diff between final, finally & finalize
Final: is a keyword
Finally: finally is the block in Java Exception Handling to execute the important
code whether the exception occurs or not
Finalize: finalize is the method in Java which is used to perform clean up
processing just before object is garbage collected.
multiple branches__>
1. master
2. Vishal
3. pratik
case1: Seperate files(No conflict) ->ok-->move vishal & pratik code to master
branch
case2: Code correction(Conflict)--> rpl code change to pratik/vishal--->code
pull--> code modify--> code push--> TL pull request-->master branach