"tell me about your framework" Code Answer's
You're definitely familiar with the best coding language Whatever that developers use to develop their projects and they get all their queries like "tell me about your framework" answered properly. Developers are finding an appropriate answer about tell me about your framework related to the Whatever coding language. By visiting this online portal developers get answers concerning Whatever codes question like tell me about your framework. Enter your desired code related query in the search bar and get every piece of information about Whatever code related question on tell me about your framework.
tell me about your framework
--> Tell me about your framework?
-> Java
-> Selenium
-> Maven -> pom.xml -> dependencies
-> Singleton design pattern
-> Page object model design pattern
-> Cucumber to make our framework BDD (Behavior Driven)
-> Gherkin language in feature files
-> Data driven framework
-> We can read data from configuration.properties
-> We can read data from feature files
-> We can read data from excel sheets
- feature file
- Feature. scenario + scenario outline + Gherkin lang.
- step-definition - for test script(codeing part)
- for front-end testing
- Selenium webDriver + Junit
- for backEnd testing:
- JDBC for dataBase testing
- Rest-Assured for API testing
-Hooks -- class
- to store your before + after method
- - Screenshot with @after - when it is failed only
- Runner
- cukes runner class
- the class is empty
- we use 2 annotations -- @RunWith
- cofiguration.properties file
- store important data sush as : URL, Browser, credentials
- Also we used ConfigurationReader class to be able
to read our test data from cofiguration.properties
- ConfigurationReader stored under utile package
tell me about your framework
I am using JAVA as a programming language.
My testing framework is combination of tools
Maven-Selenium-Junit-Cucumber-TestNG
My framework created as a maven project,
I use Maven as a built automation tool which
has pom.xml file that allows us to manage
dependencies and plugins easily.
Selenium WebDriver is a library/tool/API
which is used to automate the browser.
TestNG used to group tests using xml files,
do soft and hard assertions, create test
methods, run in certain order.
Junit ,I use cucumber with junit, to run
tests and also to do assertions.
Annotations are used in hooks and runner class.
Cucumber is a tool for running automated tests
written in a behavior driven development style.
My framework support both Behavioral
Driven and Data Driven Developments.
For Unit Testing, BDD I achieve by using
Cucumber with Gherkin language and
DDD by using Scenario Outline with Examples
in my feature files or Apache POI to read the
data from external sources.
I use Maven as project build tool, in pom.xml
file I manage framework dependencies and plugins:
Dependencies selenium-java, WebDriver manager,
cucumber-java, cucumber- Junit
Plugins: Runner/FailedTestRunner, apache maven,
maven -cucumber reporting, cucumber html reporting
I use Page Object Model to simplify managing and
maintaining our framework for myself and my team.
POM Design Pattern allows me to locate web elements
only once, in their respective classes.
So that, if there are any problems with any web elements,
I know exactly where to go and how to fix it.
We created Singleton design pattern to allow our
framework to pass the Exact same instance of our driver
in the same runtime.
(one session: when you click run, selenium creates
one session. the session will end when the driver stops.)
1. I created a configuration.properties
I keep important test data such as: URL, Browser, credentials
so that we can reach them from one place to avoid hardcoding
2. I have a Pages Package where I identify and store
web elements variables and methods for each page of my application.
*I also use PageFactory pattern to instantiate
my web elements by using @FindBy
3. I trigger my framework from my Runner Class.
Runner classes that helps to generate code from Feature file.
*Runner class allows me to run different types of testing
suites that I created with my tags, such as smoke,
regression, mini-regression.
4. I have a resources folder with Feature Files
where I store my tests with scenarios or scenario outline.
*All feature files are written in Gherkin Language
and when we run the runner class with dryRun as true
it creates all the test steps.
5. I have a STEP DEFINITIONS package which
I implemented the actual code in the classes
so they are separated from the rest of the framework
6. Under step definitions I also have Hook Class
there which contain before and after annotations
to run code before(set up browser, maximize the window)
and after my tests (close the browser).
7. I also have Utilities packages where
I keep all my reusable methods and driver class
such as Browser Utilities, ConfigurationReader,
Driver class with singleton pattern, Application Utils, TestBase class
8. In Target folder - I have html report and rerun.txt file
and it stores my failed features files, and
I have Failed Test Runner class which will rerun
my failed classes. I also have excel folder where
I store excel files with testing data and
I have excel util in my utilities folder
with reusable methods to read and write in excel file.
As I mention all my feature files are written
in Gherkin language which helps non-technical
people to have clear understanding.
We are using JDBC library for Database testing
and Rest Assured for API testing.
I use Git for version control and Jenkins for
continuous integration, as well as Jira with
X-ray for management and defect tracking tool.
- I have different types of reports. But mainly
I use "maven-cucumber-reporting"
Also our framework supports Data Driving Testing
for external data resources like excel,
csv files, apache poi, scenario outline.
Our framework also generates cucumber html and json
format reports with steps from feature files.
All those coders who are working on the Whatever based application and are stuck on tell me about your framework can get a collection of related answers to their query. Programmers need to enter their query on tell me about your framework related to Whatever code and they'll get their ambiguities clear immediately. On our webpage, there are tutorials about tell me about your framework for the programmers working on Whatever code while coding their module. Coders are also allowed to rectify already present answers of tell me about your framework while working on the Whatever language code. Developers can add up suggestions if they deem fit any other answer relating to "tell me about your framework". Visit this developer's friendly online web community, CodeProZone, and get your queries like tell me about your framework resolved professionally and stay updated to the latest Whatever updates.