i
Synechron
Filter interviews by
Questions related to TestNG, String and StringBuilder, current project framework details, and POM.
TestNG is a testing framework for Java
String is immutable while StringBuilder is mutable
Current project framework details depend on the project
POM is a design pattern for creating object repositories
posted on 30 Jan 2025
I was interviewed in Dec 2024.
Basic quant and reasoning questions
Selenium MCQ
Java programs with MCQ
The driver is typically initialized in the setup method of a test automation framework.
Driver initialization is usually done in a setup method before test execution.
Commonly used methods for driver initialization include WebDriverManager, System.setProperty, and driver instantiation.
Example: WebDriverManager.chromedriver().setup();
Driver can be both static and non-static depending on the context of its usage.
Driver class can be static if it is used to initiate the WebDriver instance in a test automation framework.
Driver class can be non-static if it is used as an instance variable within a test class.
Static driver can be accessed directly without creating an object of the class.
Non-static driver requires an object of the class to be created befo
Static variables belong to the class itself, while non-static variables belong to instances of the class.
Static variables are shared among all instances of a class
Non-static variables are unique to each instance of a class
Static variables are initialized only once, at the start of the program
Non-static variables are initialized separately for each instance of the class
Static and non-static have their own disadvantages in QA automation testing.
Static methods cannot be overridden or inherited, making it difficult to create flexible test cases.
Non-static methods require an instance of the class to be created, which can lead to increased memory usage.
Static methods can lead to tight coupling between classes, making it harder to maintain and update the code.
Non-static methods may have de...
TestNG allows parallel execution of test cases to save time and improve efficiency.
TestNG provides the 'parallel' attribute in the testng.xml file to specify the level of parallelism for test execution.
Parallel execution can be achieved at the test level, class level, method level, or suite level.
TestNG also supports parallel execution of tests across multiple classes or suites using the 'parallel' attribute in the sui...
Parallel testing in TestNG allows running tests concurrently for faster execution.
Use 'parallel' attribute in testng.xml file to specify parallel execution mode.
Set 'parallel' attribute to 'methods', 'classes', or 'tests' based on the level of parallelism needed.
Example: <suite name='MySuite' parallel='tests'>
Use 'thread-count' attribute to specify the number of threads to use for parallel execution.
Parallel methods run multiple methods concurrently within a single test, while parallel tests run multiple tests concurrently.
Parallel methods execute multiple methods within a single test class concurrently.
Parallel tests execute multiple test classes concurrently.
Parallel methods are useful for speeding up the execution of a single test, while parallel tests are useful for running multiple tests faster.
Example: Runni...
Use Rest Assured to upload a file
Use the given file path to create a File object
Use MultiPartSpecBuilder to build the request with the file
Send the request using Rest Assured's given(), when(), and post() methods
The parameter for a POST method in Postman is typically sent in the request body.
Parameters are sent in the request body in key-value pairs
Parameters can be sent as form-data, x-www-form-urlencoded, or raw JSON
Example: {"key": "value"}
Cucumber knows the step definition file based on the annotations provided in the feature files.
Cucumber uses annotations like @Given, @When, @Then to map steps in feature files to corresponding step definition methods.
Step definition files are typically placed in a separate package or directory within the project structure.
Cucumber scans the project directory for step definition files based on the package structure and
Parameters used in cucumber are used to pass values to the step definitions in feature files.
Parameters are defined in feature files using < > syntax
Parameters can be passed to step definitions using Regular Expressions
Parameters can be used to make scenarios more reusable and dynamic
Datatable in Cucumber is used to pass multiple sets of data to a step definition in a scenario.
Datatables are defined using pipes (|) to separate values
Each row in the datatable represents a set of data passed to the step definition
Datatables can be used for parameterization and data-driven testing
Yes, I have created the test plan document at the start of the project.
Yes, I always create a test plan document at the beginning of a project to outline the testing approach and strategy.
The test plan document includes details on scope, objectives, resources, schedule, and test cases.
It helps in ensuring that all stakeholders are aligned on the testing process and expectations.
For example, in my previous project, I cr...
During the initial testing cycle of a project, focus is on establishing test cases, setting up test environments, and identifying potential issues.
Creating test cases based on requirements
Setting up test environments
Identifying potential issues and risks
Executing test cases and reporting defects
Collaborating with developers to resolve issues
Fibonacci sequence is a mathematical pattern where each number is the sum of the two preceding ones.
Fibonacci sequence is a series of numbers where each number is the sum of the two preceding ones.
The sequence starts with 1, 2, then each subsequent number is the sum of the two previous numbers (1+2=3, 2+3=5, 3+5=8, and so on).
This sequence is used in estimating because it reflects natural growth patterns found in natur
Testing matrix is a tool used to track test coverage and automation ROI is the return on investment from implementing automation testing.
Testing matrix is a visual representation of test cases, test scenarios, and their coverage across different platforms, browsers, devices, etc.
Automation ROI is the measure of the benefits gained from automation testing compared to the costs incurred in implementing and maintaining th...
I was interviewed in Dec 2024.
I applied via Referral and was interviewed in Aug 2024. There was 1 interview round.
We are using the Selenium framework for automation testing in our project.
Selenium is a popular open-source automation testing framework
It supports multiple programming languages like Java, Python, C#, etc.
Selenium WebDriver is used for automating web applications
It provides features for browser automation, testing across different browsers, and parallel test execution
Framework structure refers to the organization and layout of the automation framework components.
Framework structure includes modules, libraries, test scripts, configuration files, and test data.
It follows a hierarchical structure with layers such as driver scripts, reusable libraries, and test cases.
Frameworks can be structured as linear, modular, data-driven, keyword-driven, or hybrid.
Example: In a data-driven framew...
findelement returns the first matching element on a webpage, findelements returns a list of all matching elements.
findelement returns a single WebElement, findelements returns a list of WebElements
findelement throws NoSuchElementException if no element is found, findelements returns an empty list
Example: driver.findElement(By.id("exampleId")) vs driver.findElements(By.className("exampleClass"))
Handling multiple tabs in Selenium involves switching between tabs and performing actions on each tab.
Use getWindowHandles() to get a set of window handles
Switch to a specific tab using switchTo().window(handle)
Perform actions on the tab
Close the tab if needed using driver.close()
Hashmaps are data structures that store key-value pairs and allow for efficient retrieval of values based on keys.
Hashmaps are also known as dictionaries, maps, or associative arrays.
They use a hash function to map keys to indices in an underlying array.
Hashmaps offer constant-time average case complexity for insertion, deletion, and lookup operations.
Example: HashMap
Try and catch blocks are used in programming to handle exceptions and prevent the program from crashing.
Try block is used to enclose the code that might throw an exception
Catch block is used to handle the exception thrown in the try block
It prevents the program from crashing and allows for graceful error handling
Can also include finally block to execute code regardless of whether an exception is thrown
Inheritance is a concept in object-oriented programming where a class can inherit attributes and methods from another class.
Allows a class to inherit attributes and methods from another class
Promotes code reusability and reduces redundancy
Creates a parent-child relationship between classes
Derived class can access the properties and methods of the base class
Example: Class 'Car' can inherit from class 'Vehicle'
I applied via Approached by Company
Project structure refers to the organization of files, folders, and resources within a software project.
Main folders like src (source code), test (test cases), lib (libraries), docs (documentation)
Subfolders for specific modules or components
Configuration files like pom.xml, package.json, etc.
Build scripts like Jenkinsfile, Dockerfile
Version control files like .gitignore, .gitattributes
README.md file for project overvi
posted on 7 Oct 2024
I applied via Walk-in and was interviewed in Sep 2024. There were 2 interview rounds.
posted on 12 Aug 2024
I applied via Job Portal and was interviewed in Jul 2024. There were 2 interview rounds.
Framework structure refers to the organization of test automation code, including folders, files, libraries, and configurations.
Framework structure typically includes folders for test scripts, test data, page objects, utilities, and configurations.
It may involve separation of concerns, such as using Page Object Model for better maintainability.
Frameworks like TestNG or JUnit provide annotations to structure test cases ...
I am a dedicated Automation Test Engineer with 5 years of experience in creating and executing test cases for software applications.
Experienced in creating automated test scripts using tools like Selenium and Appium
Proficient in identifying bugs and issues in software applications
Skilled in writing test plans and test cases to ensure comprehensive test coverage
Strong knowledge of programming languages such as Java and ...
posted on 14 Apr 2024
I applied via Referral and was interviewed in Mar 2024. There was 1 interview round.
BDD is a software development process that encourages collaboration between developers, QA, and non-technical stakeholders.
BDD stands for Behavior-Driven Development
It focuses on defining the behavior of the system through examples in plain text
Uses a common language (Gherkin syntax) to describe requirements and tests
Helps in improving communication and understanding between team members
Popular BDD tools include Cucumb
posted on 4 Apr 2024
I applied via Company Website and was interviewed in Mar 2024. There was 1 interview round.
Scenario is a single test case while scenario outline is a template for multiple test cases with different inputs.
Scenario is a single test case with specific inputs and expected outcomes
Scenario outline is a template for multiple test cases with placeholders for different inputs
In scenario outline, examples table is used to provide different input values for each test case
OOPs (Object-Oriented Programming) is a programming paradigm based on the concept of objects, which can contain data in the form of fields and code in the form of procedures.
OOPs focuses on creating objects that interact with each other to solve a problem
Key concepts include encapsulation, inheritance, polymorphism, and abstraction
Encapsulation: Bundling data and methods that operate on the data into a single unit
Inher...
Technical Lead
2.8k
salaries
| ₹11.3 L/yr - ₹40 L/yr |
Senior Associate
1.9k
salaries
| ₹8 L/yr - ₹27 L/yr |
Senior Software Engineer
1.5k
salaries
| ₹12.5 L/yr - ₹27 L/yr |
Senior Associate Technology L1
1k
salaries
| ₹8.9 L/yr - ₹29 L/yr |
Associate Specialist
792
salaries
| ₹12.9 L/yr - ₹40 L/yr |
TCS
Infosys
Wipro
HCLTech