This is a crucial question to actually know whether someone has really worked on Selenium or not.
Simple theoretical questions are not very likely to be asked nowadays. We all know those kinds of questions are everywhere on the internet.
There are plenty of questions like the difference between different wait types, assertions, listeners, dependency, etc.
We usually ask if the candidate tested any web app with the framework and if yes, how did you design the structure to test any application?
It is important to create an Agile and Scalable framework. In training, we work with candidates to help them to test an e-commerce web app with automation testing, and that app has several modules like product inventory, orders, customers, cart, and payment (stripe).
How to explain the framework?
Our framework structure during early-stage looks like this:
It is a hybrid framework that works on keywords and data to test web apps. Here are the main components of the framework.
Main Controller
This is the base module of the framework, which starts the process of testing. It initializes the other modules and invokes testing modules.
Config Module
Config package holds config details in an XML file to get framework configuration and get keyword and data-driven configuration by reading Excel files.
Note: Currently, this framework run tests in sequence mode. But this will be pretty cool if tests will run in parallel mode.
Test Data Module
It holds Test data for testing purposes. We defined test data in data files. This module reads all data files and provides them to the JUnit controller. These data files have test case details, keywords data, and sample data to test an e-commerce web application.
JUnit Controller
JUnit controller helps to create dynamic test cases and import all testing details from Excel objects and execute test modules for each test defined in data files. It also stores after-execution test details to generate an output report.
Util Module
This module contains all utility methods and driver methods to perform all operations that are defined in data files like performing assertions, handling alert boxes, applying explicit waits, and many others to test web applications, etc.
Test Module
The test module is responsible to perform test cases and calls the Util module to perform operations.
And in the last, the main controller will generate a report of all test cases.
This is how you will explain your project in the interview.
We hope you now know what to say in the interview process, and we wish you all the best!
Instructor-led Training
https://www.qaonlinetraining.com/programs/master-of-functional-automation-testing/