B - Explain of Framework
B - Explain of Framework
We use Apache POI to read test data from Excel files, allowing the
framework to dynamically retrieve and apply different data during test
execution.
Q. Have you done any refactoring in the test framework or test script? And
what was that?
Reorganized Test Scripts: Implemented the Page Object Model (POM) for better
maintainability by separating test logic from UI elements.
Parameterization: Used TestNG to make test cases more reusable by running them
with different sets of input data.
Custom Utility Methods: Created reusable utility functions (e.g., for logging,
assertions, and waits) to avoid code duplication.
Removed Hardcoding: Store data into configuration files and Excel sheets to make
scripts more flexible.
Stages: These represent different steps in the pipeline, like build, test, or deploy.
Jobs: A job runs a series of steps that are executed sequentially. Jobs can be run on
specific agents or environments.
Steps: Steps define individual tasks, such as build tasks, testing tasks, and deployment
tasks.
o Common tasks in Azure Pipelines include running Maven, npm, or Docker
commands.
Triggers: Pipelines are triggered based on code changes or manually. For example, a
pipeline could be triggered by a push to the master branch or a pull request.
1. Functional Testing:
o Validate that the application works as expected (e.g., login functionality, form
submission).
2. Regression Testing:
o Ensure that new changes do not break existing functionality.
3. Cross-Browser Testing:
o Test the application on different browsers (e.g., Chrome, Firefox).
4. API Testing:
o Test backend APIs using tools like Postman or Rest Assured to validate
responses and behaviour.
5. Data-Driven Testing:
o Test the application with multiple sets of input data to check consistency.
6. Smoke Testing:
o Quickly verify that the core functionalities are working after a build.
7. Integration Testing:
o Check how different modules of the application interact with each other.
8. End-to-End Testing:
o Validate complete workflows, such as user registration to order placement.
Automation testing helps save time, improve accuracy, and allows frequent execution of
repetitive tests.
Test Flakiness: Some tests fail randomly due to environment or timing issues.
Long Execution Time: A large suite takes time to execute.
Environment Dependencies: Issues with test environments or configurations.
Parallel Execution Errors: Conflicts arise when tests run simultaneously.
Q. Have you worked as part of a big team? How did you divide tasks and
deliver?
try {
WebElement element = driver.findElement(By.id("submit"));
element.click();
} catch (NoSuchElementException e) {
System.out.println("Element not found: " + e.getMessage());
}