Sdet Automation Test Engineer
200+ Sdet Automation Test Engineer Interview Questions and Answers
Q51. What are the different types of design patterns?
Design patterns are reusable solutions to common software design problems, categorized into creational, structural, and behavioral patterns.
Creational Patterns: Deal with object creation mechanisms. Example: Singleton, Factory Method.
Structural Patterns: Focus on how classes and objects are composed. Example: Adapter, Composite.
Behavioral Patterns: Concerned with communication between objects. Example: Observer, Strategy.
Q52. What is regression testing, automation testing
Regression testing is retesting software to ensure new changes haven't affected existing functionality. Automation testing is using tools to execute test cases.
Regression testing ensures that new code changes haven't affected existing functionality
Automation testing involves using tools to execute test cases automatically
Regression testing is often performed after code changes or updates
Automation testing helps in saving time and effort by automating repetitive test cases
Exam...read more
Q53. Java Program for count of characters in the given string
Java program to count characters in a given string
Use a HashMap to store characters and their counts
Iterate through the string and update the counts in the HashMap
Print the characters and their counts at the end
Q54. Why python why not others language?
Python is a popular choice for automation testing due to its simplicity, readability, extensive libraries, and cross-platform compatibility.
Python has a simple and readable syntax, making it easy to write and understand test scripts.
Python has a large number of libraries and frameworks specifically designed for automation testing, such as Selenium and PyTest.
Python is cross-platform compatible, allowing tests to be run on different operating systems.
Python integrates well wit...read more
Q55. Python- Explain how to take input from user
Use the input() function in Python to take input from the user.
Use the input() function to prompt the user for input and store the input in a variable.
You can specify a prompt message inside the input() function to guide the user on what to input.
The input() function always returns a string, so you may need to convert the input to the desired data type if needed.
Q56. What is test strategies and test plans
Test strategies and test plans are essential documents that outline the approach and scope of testing activities.
Test strategy defines the overall testing approach, including objectives, resources, and timelines.
Test plan details the specific tests to be conducted, including test cases, test data, and expected results.
Test strategy is high-level and focuses on the big picture, while test plan is more detailed and specific.
Both documents are crucial for ensuring thorough and e...read more
Share interview questions and help millions of jobseekers 🌟
Q57. what is difference between PUT and POST
PUT is used to update or replace an existing resource, while POST is used to create a new resource.
PUT is idempotent, meaning multiple identical requests will have the same effect as a single request
POST is not idempotent, meaning multiple identical requests may have different effects
PUT requires the client to specify the URI of the resource to update, while POST does not
PUT is typically used for updating existing resources, while POST is used for creating new resources
Q58. How to automate filters in web page
Automating filters in a web page involves identifying filter elements, selecting filter criteria, and verifying filtered results.
Identify filter elements on the web page such as dropdowns, checkboxes, or input fields
Use automation tools like Selenium to interact with filter elements and select desired criteria
Trigger filter action (e.g. clicking 'Apply' button) and wait for the page to refresh with filtered results
Verify that the filtered results match the selected criteria b...read more
Sdet Automation Test Engineer Jobs
Q59. Coding question to find second highest occuring letter in a string
Q60. What is differences between smoke and sanity
Smoke testing is a quick test to check if the build is stable, while sanity testing is a more thorough test to check if the specific functionalities are working as expected.
Smoke testing is done to ensure the stability of the build before further testing, while sanity testing is done to ensure the specific functionalities are working correctly.
Smoke testing is a subset of regression testing, while sanity testing is a subset of acceptance testing.
Smoke testing is usually done ...read more
Q61. How to update name in database.
To update a name in a database, you can use SQL UPDATE statement with the appropriate WHERE clause.
Use SQL UPDATE statement with SET clause to specify the new name
Add a WHERE clause to specify the record to be updated based on a unique identifier
Ensure proper permissions to update the database
Example: UPDATE table_name SET name = 'new_name' WHERE id = 123
Q62. explain authorization and authentication
Authentication verifies a user's identity, while authorization determines what actions they are allowed to perform.
Authentication confirms the user's identity through credentials like passwords or biometrics.
Authorization controls the access rights of authenticated users to specific resources or actions.
Examples include logging into a website with a username and password (authentication) and being able to view/edit certain pages based on user roles (authorization).
Q63. How will you automate data in files
Automating data in files involves using tools like Selenium WebDriver or Apache POI to read/write data from/to files.
Use Selenium WebDriver to interact with web elements and extract data to be written to files
Use Apache POI library to read/write data from/to Excel files
Utilize scripting languages like Python or Java to automate data manipulation in files
Q64. What is Java streams and Lamda functions
Java streams are a sequence of elements that support functional-style operations. Lambda functions are anonymous functions that can be passed as arguments.
Java streams provide a way to process collections of objects in a functional style.
Lambda functions allow for concise and readable code by enabling the passing of behavior as an argument.
Example: Using Java streams to filter a list of numbers and then map them to their squares.
Example: Using lambda functions to define a cus...read more
Q65. What is react js and why we used it?
React JS is a JavaScript library for building user interfaces.
React JS allows for building reusable UI components.
It uses a virtual DOM for efficient rendering.
React JS is popular for single-page applications and dynamic web interfaces.
It follows a component-based architecture.
Q66. what is java and cpp and dbms sql etc
Java is a popular programming language, C++ is another programming language, and DBMS SQL is a language used for managing databases.
Java is an object-oriented programming language commonly used for building web applications and software.
C++ is a high-level programming language often used for system programming and game development.
DBMS SQL is a language used to interact with relational databases, allowing users to retrieve, update, and manage data.
Examples: Java - used in And...read more
Q67. what is linked list, write program for it
A linked list is a data structure where each element points to the next element in the sequence.
Linked list is made up of nodes, each containing data and a reference to the next node.
Example: Node 1 -> Node 2 -> Node 3
Program to create a linked list in Python: class Node: def __init__(self, data=None): self.data = data self.next = None
Q68. what is python, oops and inheritance
Python is a high-level programming language known for its simplicity and readability. OOPs (Object-Oriented Programming) is a programming paradigm that uses objects and classes. Inheritance is a feature of OOPs that allows a class to inherit properties and behavior from another class.
Python is a versatile, interpreted language used for web development, data analysis, artificial intelligence, and more.
OOPs focuses on creating objects that contain both data and methods to manip...read more
Q69. what is testng and maven, show its implementation
TestNG is a testing framework for Java applications, while Maven is a build automation tool. They are commonly used in automation testing.
TestNG is used for writing and running test cases in Java
Maven is used for managing dependencies and building projects
TestNG can be integrated with Maven for automated testing
Example: Using TestNG annotations like @Test, @BeforeTest, @AfterTest in a Maven project
Q70. Difference between background keyword and before hooks in cucumber
Background keyword runs before each scenario in a feature file, while before hooks run before each scenario in a step definition file.
Background keyword is used to define steps that are common to all scenarios in a feature file
Before hooks are used to set up preconditions or perform actions before each scenario in a step definition file
Background keyword is defined at the beginning of a feature file, while before hooks are defined in the step definition file
Example: Backgroun...read more
Q71. What is OOPS? What is multi threading?
OOPS stands for Object-Oriented Programming. It is a programming paradigm based on the concept of objects, which can contain data and code. Multi-threading is the ability of a CPU to execute multiple threads concurrently.
OOPS is a programming paradigm that uses objects to design applications.
It allows for encapsulation, inheritance, and polymorphism.
Example: Inheritance allows a class to inherit properties and methods from another class.
Multi-threading allows multiple threads...read more
Q72. Recursion to memoization DP problem and follow ups.
Recursion to memoization DP problem involves optimizing recursive solutions by storing intermediate results.
Recursion involves solving a problem by breaking it down into smaller subproblems and calling the function recursively.
Memoization involves storing the results of expensive function calls and reusing them when the same inputs occur again.
Dynamic Programming (DP) involves solving problems by breaking them down into simpler subproblems and storing the results to avoid red...read more
Q73. POM Pattern implementation in Java
POM (Page Object Model) is a design pattern used in test automation to create reusable and maintainable code by separating page objects from test scripts.
Create a separate class for each web page or component
Encapsulate the web elements and their actions within the page class
Use methods in the page class to interact with the web elements
In test scripts, instantiate the page class and call its methods to perform actions on the page
Q74. Code to explain Indian number plate system
Indian number plate system consists of a unique combination of letters and numbers to identify vehicles.
Indian number plates consist of a combination of letters and numbers
The first two letters indicate the state where the vehicle is registered
Followed by a unique number assigned to the vehicle
Some number plates may also include additional information like the vehicle class or fuel type
Q75. How is given in rest assured?
Rest Assured is a Java library used for testing RESTful APIs. It provides a simple and intuitive way to write automated tests.
Rest Assured is a Java library
It is used for testing RESTful APIs
It provides a simple and intuitive way to write automated tests
Q76. How to solve 2 sum problem?
The 2 sum problem involves finding two numbers in an array that add up to a specific target sum.
Use a hash map to store the difference between the target sum and each element in the array.
Iterate through the array and check if the current element's complement exists in the hash map.
Return the indices of the two numbers that add up to the target sum.
Q77. How to solve magical number ?
Magical number can be solved by identifying the pattern or rule that governs the numbers and applying it to find the next number in the sequence.
Identify the pattern or rule in the given numbers
Apply the pattern to find the next number in the sequence
Examples: Fibonacci sequence, prime numbers, arithmetic progression
Q78. to check if a string is palindrome with recusrion
Check if a string is palindrome using recursion
Create a recursive function that compares the first and last characters of the string
If they match, call the function with the substring excluding the first and last characters
Continue this process until the string length is 0 or 1, then return true if all characters matched
Example: 'racecar' is a palindrome, 'hello' is not
Q79. Code to move 0's to extreme right position
Code to move 0's to extreme right position in an array of strings
Iterate through the array and move all 0's to the end of the array
Use two pointers approach to swap elements
Example: Input array ['1', '0', '3', '0', '5'], Output array ['1', '3', '5', '0', '0']
Q80. Program to find repeated character in a word.
Program to find repeated character in a word.
Iterate through each character in the word
Store each character in a data structure
If a character is already present in the data structure, it is a repeated character
Q81. How will you handle dynamic wait
I will handle dynamic wait by using explicit waits in Selenium WebDriver.
Use WebDriverWait class in Selenium WebDriver to wait for a certain condition to be met before proceeding
Specify the maximum amount of time to wait and the frequency of checking for the condition
Use ExpectedConditions class to define the condition to wait for, such as element visibility or presence
Q82. What happen when we visit Url
When we visit a URL, the browser sends a request to the server hosting the website, which then responds with the requested web page.
Browser sends a request to the server hosting the website
Server processes the request and responds with the requested web page
Web page is displayed in the browser for the user to interact with
Q83. What is oberloading and over riding
Overloading is when a class has multiple methods with the same name but different parameters. Overriding is when a subclass provides its own implementation of a method from its superclass.
Overloading is used to provide different ways to call a method with different parameters
Overriding is used to change the behavior of a method in a subclass
Overloading is resolved at compile-time while overriding is resolved at runtime
Overloading is also known as compile-time polymorphism whi...read more
Q84. What are abstract classes?
Abstract classes are classes that cannot be instantiated and may contain abstract methods that must be implemented by subclasses.
Cannot be instantiated directly
May contain abstract methods
Used as a blueprint for other classes
Q85. Coding question to find the frequency of string
Find the frequency of each string in an array of strings.
Create a hashmap to store the frequency of each string.
Iterate through the array of strings and update the hashmap accordingly.
Return the hashmap with the frequency of each string.
Q86. Actions class in selenium
Actions class in Selenium is used to perform complex user interactions like drag and drop, double click, etc.
Actions class is part of the Selenium WebDriver API
It is used to perform advanced user interactions like drag and drop, double click, etc.
Actions class is used with the Actions class object to build and perform complex interactions
Example: Actions actions = new Actions(driver); actions.dragAndDrop(source, target).build().perform();
Q87. Basic commands in selenium
Basic commands in Selenium include findElement, sendKeys, click, getText, and getTitle.
findElement - locates a single element on the web page
sendKeys - enters text into an input field
click - simulates a mouse click on an element
getText - retrieves the text of an element
getTitle - retrieves the title of the web page
Q88. Locators used in automation
Locators are used in automation testing to identify and interact with web elements on a webpage.
Locators are used to find elements on a webpage based on their attributes such as ID, class, name, etc.
Common locators include ID, class name, name, tag name, link text, partial link text, and XPath.
Using unique locators helps in creating stable and reliable automation scripts.
Examples: driver.findElement(By.id("elementId")), driver.findElement(By.className("elementClass"))
Q89. Test cases of login/signup
Test cases for login/signup functionality
Verify valid credentials can successfully login
Verify invalid credentials cannot login
Verify user can sign up with valid information
Verify user cannot sign up with existing email
Verify password strength requirements during sign up
Q90. find the missing number in a permutation array
Find the missing number in a permutation array
Iterate through the array and calculate the sum of all numbers
Calculate the sum of all numbers from 1 to n (where n is the length of the array)
Subtract the sum of the array from the sum of all numbers to find the missing number
Q91. write a code to find vowel in given string.
Code to find vowels in a given string
Iterate through each character in the string
Check if the character is a vowel (a, e, i, o, u)
Count the number of vowels found in the string
Q92. how you resolved those exceptions
I resolved exceptions by identifying root cause, debugging code, and implementing appropriate fixes.
Identified the root cause of the exception by analyzing logs and code
Debugged the code to understand the flow and pinpoint the issue
Implemented appropriate fixes such as updating code logic or configuration settings
Q93. Difference in 200,201 and 204 HTTP codes
200 - OK, 201 - Created, 204 - No Content
200 - Successful response, request was successful
201 - Resource created successfully
204 - No content to send in the response, successful request but no data to return
Q94. What is state and stateless widget
Stateful widgets maintain state that can change during the lifetime of the widget, while stateless widgets do not have any internal state.
Stateful widgets have a createState() method that returns a State object, which can hold mutable state data.
Stateless widgets are immutable and their properties are set at the time of creation.
Stateful widgets are used when the UI needs to update based on user interactions or other events.
Stateless widgets are used for static content that d...read more
Q95. Write java program to print patterns
Java program to print patterns using loops
Use nested loops to print the desired pattern
Patterns can be created using characters or numbers
Patterns can be simple shapes or more complex designs
Q96. Write java program to reverse a string
Java program to reverse a string using StringBuilder
Create a StringBuilder object with the input string
Use the reverse() method of StringBuilder to reverse the string
Convert the reversed StringBuilder object back to a string using toString()
Q97. Exceptions encountered during Automation.
Exceptions encountered during automation testing can include element not found, timeout, invalid input, etc.
ElementNotVisibleException: When an element is present in the DOM but not visible on the page
TimeoutException: When a command takes longer than the timeout specified
NoSuchElementException: When an element could not be found in the DOM
StaleElementReferenceException: When an element is no longer attached to the DOM
InvalidInputException: When invalid input is provided to a...read more
Q98. What is Oops concept?
Oops concept is a programming paradigm that focuses on objects and their interactions to solve problems.
Oops stands for Object-Oriented Programming System.
It emphasizes the use of classes and objects to structure code.
Encapsulation, inheritance, and polymorphism are key concepts in OOP.
Encapsulation hides the internal details of an object and provides a public interface.
Inheritance allows classes to inherit properties and behaviors from other classes.
Polymorphism enables obje...read more
Q99. What is test life cycle?
Test life cycle is a series of phases that a software testing process goes through, from planning to test closure.
Test life cycle includes test planning, test design, test execution, and test closure.
In test planning, test objectives, scope, and test strategy are defined.
Test design involves creating test cases and test data.
Test execution is the phase where tests are executed and defects are logged.
Test closure includes test summary report, defect analysis, and lessons learn...read more
Q100. What is When in cucumber?
When in Cucumber is a keyword used to define the conditions under which a particular step or scenario should be executed.
When is used to specify the triggering event or condition for a step or scenario
It is followed by a regular expression or a Cucumber expression
When can be used to perform actions or set up preconditions before executing the step or scenario
It can also be used to pass parameters to the step definition
Interview Questions of Similar Designations
Top Interview Questions for Sdet Automation Test Engineer Related Skills
Interview experiences of popular companies
Calculate your in-hand salary
Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary
Reviews
Interviews
Salaries
Users/Month