Accenture Selenium Interview Questions with Answers

Download Accenture Selenium Interview Questions PDF

Prepare for Accenture interviews with 59 curated questions. The answer examples below explain key concepts; personalize project and experience responses truthfully. These are independent study resources, not official company interview materials.

Interview Questions with Answer Explanations

These study answers summarize the associated PDF material. Adapt personal, project and experience details to your own background.

HashMap vs Hashtable

Both store key-value pairs. HashMap is not synchronized, is generally faster for single-threaded use, and permits one null key and multiple null values. Hashtable is a legacy synchronized class and does not permit null keys or values. For concurrent access, ConcurrentHashMap is usually a better modern choice.

StringBuffer vs String

String is immutable: a modification creates a new String object. StringBuffer is mutable and can append, insert or delete characters in the same buffer; its methods are synchronized. For repeated concatenation in single-threaded code, StringBuilder is usually preferred because it is mutable without synchronization overhead. StringBuffer and String are separate classes.

What is testing?

Software testing evaluates a product to find defects and provide evidence about quality, risk and fitness for use. It includes analysing requirements, designing tests, preparing data, executing tests, comparing actual with expected results, logging defects and reporting risk. Testing cannot prove there are no defects; it reduces the likelihood and impact of failures. Testing can be static, such as reviews, or dynamic, by executing software.

Different types of testing

By level: unit, integration, system and acceptance. By purpose: functional, regression, smoke, sanity, exploratory and confirmation testing. Non-functional types include performance, security, compatibility, usability, accessibility, reliability, scalability, recovery, installation and localization testing. Testing can also be black-box, white-box or grey-box.

Testing apart from functional and performance

Examples include security, compatibility, usability, accessibility, reliability, scalability, stress, endurance/soak, recovery, installation/upgrade, localization, interoperability, failover, backup/restore, data migration, API, database, exploratory, regression, smoke, sanity, acceptance and compliance testing. Select tests based on business and technical risk.

Security testing

Security testing checks whether an application protects data and services from unauthorized access and misuse. It covers authentication, authorization, sessions, input validation, encryption, sensitive-data exposure, access control and configuration. QA examples include verifying role-based access, rejecting invalid API tokens, preventing one user from viewing another user's records, and checking session expiry. Penetration testing and scanning should be authorized and performed in controlled environments.

Where do you see yourself in two years?

In two years, I see myself taking broader ownership of QA delivery—leading test planning, improving automation coverage and reliability, mentoring team members and contributing to release-risk decisions. I want to deepen my Java/Selenium and Playwright skills, strengthen API and CI/CD integration, and grow toward QA Lead or Test Manager responsibilities while remaining technically hands-on.

Compatibility testing

Compatibility testing verifies that an application works correctly across supported browsers, browser versions, operating systems, devices, screen sizes, databases and integrations. For a web application, I would create a risk-based browser/device matrix and validate critical workflows, rendering, downloads, responsive layout and browser-specific behaviour. Testing every possible combination is usually impractical, so production usage and risk guide selection.

Code coverage

Code coverage measures how much source code is exercised by tests. Measures include statement, branch/decision, condition and method coverage. For example, 80% statement coverage means 80% of measured statements were executed. Coverage does not prove test quality: a line may execute without meaningful assertions.

Why are you looking for a change?

I appreciate the opportunities in my current organisation. At this stage, I am looking for broader technical ownership, opportunities to improve automation strategy and framework design, and a path to contribute to QA delivery and mentoring. I want to apply my Java, Selenium and Cucumber experience to new quality challenges. My decision is based on career growth and role alignment, rather than negative feelings about my current employer.

Project achievements

Use a real situation-action-result example. For instance, if repeated regression took significant manual effort, explain how you selected stable high-value scenarios, automated them, improved reporting and helped the team get feedback sooner. Other achievements might include finding a critical defect before production, reducing flaky tests, improving test data setup or mentoring colleagues. Add metrics only when you can substantiate them, such as scenarios automated or execution time reduced.

Project challenges

Typical challenges include changing requirements, unstable environments, test-data constraints, dynamic UI elements, asynchronous updates, flaky scripts and tight regression windows. Explain one genuine case using Situation, Task, Action and Result. For example, investigate a failing locator, choose a stable selector, wait for the correct UI state, isolate test data and rerun tests to confirm the root cause was addressed. B.

Rate yourself in Java

A sample answer is 3.5–4 out of 5, if accurate: I am comfortable with OOP, collections, strings, arrays, exception handling, methods, file operations and writing automation utilities. I continue to deepen my knowledge of concurrency, JVM internals, streams and advanced design patterns. Be prepared to justify the rating with code.

Garbage collector in Java

The garbage collector reclaims heap memory occupied by objects that are no longer reachable from GC roots. Java developers generally do not free objects manually. Setting a reference to null does not guarantee immediate collection, and System.gc() is only a request, not a guarantee. GC does not close files or database connections; use try-with-resources or explicit close methods.

Multiple inheritance in Java

Java does not allow a class to extend multiple classes, partly to avoid ambiguity in inherited implementations. A class can implement multiple interfaces. Interfaces can have default methods, and if two interfaces provide conflicting defaults, the class must override the method and resolve the conflict. Composition is another common alternative.

Interface vs abstract class

An interface defines a contract and a class can implement multiple interfaces. It can contain abstract, default, static and private methods depending on Java version. An abstract class can hold instance state, constructors, concrete methods and abstract methods, but a class can extend only one class. Use interfaces for capabilities/contracts across different classes; use abstract classes when related classes need shared state or implementation.

Prime number program

A prime is an integer greater than 1 divisible only by 1 and itself. Testing divisors up to the square root is sufficient.

Reasoning and probability

For equally likely outcomes, probability = favourable outcomes / total outcomes. A fair die has three even outcomes (2, 4, 6) out of six, so P(even)=3/6=1/2. For two fair coin tosses, outcomes are HH, HT, TH, TT; exactly one head has probability 2/4=1/2. For 'at least one', use the complement: P(at least one)=1−P(none).

How do you update your knowledge?

I learn from official documentation, release notes, technical articles, code reviews and hands-on practice. I build small proof-of-concepts, investigate automation failures and discuss approaches with teammates. Before adopting a tool, I consider reliability, maintainability, integration, team skills and business value. Mention only topics you have genuinely studied recently.

What is STLC?

STLC means Software Testing Life Cycle. A typical flow includes requirement analysis, test planning, test case development, environment setup, execution, defect retesting/regression and test closure. Phases may overlap in Agile projects and should be adapted to the delivery model.

Outputs of each STLC component

Requirement analysis: clarified requirements, risks and traceability inputs. Planning: scope, strategy, estimates, roles, schedule, tools and entry/exit criteria. Test development: scenarios, test cases, data and RTM updates. Environment setup: configured environment, build details and smoke results.

Innovation in the past three years

Choose a real improvement and explain the problem, your idea, implementation and outcome. Example structure: repeated manual checks were slow and inconsistent; you identified stable high-value scenarios, automated them using reusable methods and improved failure logs; the team then received more repeatable C. Selenium, TestNG and framework.

QA automation tools

Tools may include Selenium or Playwright for UI automation; Java with TestNG/JUnit and Cucumber; Maven for build/dependencies; Git for version control; Jenkins or another CI tool; Postman or Rest Assured for APIs; SQL clients for database checks; Jira and test management tools; and Extent Reports or Allure. Describe how the tools work together in your actual project and only claim hands-on experience you have.

What is Selenium?

Selenium is an open-source suite for browser automation. WebDriver drives supported browsers through browser automation interfaces, and Selenium Grid can distribute tests across machines and browser configurations. Selenium supports several languages and browsers but is primarily for web applications. Stable locators, waits, assertions, test data and maintainable framework design are essential to reliable Selenium automation.

Explain your Selenium framework

My current framework is a Cucumber + POM hybrid. Gherkin feature files describe scenarios, step definitions connect steps to Java code, and page classes encapsulate locators and page actions. Utilities handle common tasks such as waits, dropdowns and configuration; hooks manage setup/teardown; Maven manages dependencies and execution; Git supports collaboration; and reporting captures outcomes and evidence. Mention only components actually present in your framework.

Repository used for objects

If 'object repository' means locator storage, in POM locators are commonly maintained in page classes alongside page actions, rather than in one central repository file. Some frameworks store locators in properties, JSON or YAML. If the interviewer means source-code repository, answer with the actual tool your team uses, such as Git. Clarify the intended meaning if necessary.

WebDriver script for Gmail login

For an interview, demonstrate a generic login flow on an application you own or are authorised to test. Real Gmail sign-in may involve MFA, CAPTCHA and anti-automation protections; never hard-code credentials. Describe an example from your own work and support claimed improvements with evidence.

TestNG annotations

Common annotations: @Test, @BeforeSuite/@AfterSuite, @BeforeTest/@AfterTest, @BeforeClass/@AfterClass, @BeforeMethod/@AfterMethod, @BeforeGroups/@AfterGroups,.

Use of @BeforeTest

@BeforeTest runs before test methods associated with the relevant <test> element in testng.xml. It is useful for setup shared by classes in that XML test. @BeforeMethod runs before each test method; @BeforeClass runs before the first test method in a class. Choose the annotation according to the intended setup scope.

Access methods with parameters in TestNG

Use @Parameters for named values declared in testng.xml, such as browser or base URL, and @DataProvider for multiple data sets. @Optional can provide a default for a missing XML parameter.

Run first six classes in parallel and remaining four sequentially

Put the first six classes in one XML <test> with parallel='classes' and thread-count='6'; put the other four in a second <test> with parallel='none'. Keep suite-level parallelism disabled so the two <test> groups do not overlap. Confirm the first group’s tests are independent and WebDriver/test data are thread-safe.

TestNG XML with parallel='tests' and 'classes'

For the requested sequential groups, use suite parallel='none', parallel='classes' for the first group, and parallel='none' for the second. parallel='tests' runs separate XML <test> groups concurrently, so it conflicts with the requirement that group two wait for group one. Example: <!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd"> <suite name="GroupedExecution" parallel="none"> <test name="FirstSixParallel" parallel="classes" thread-count="6"> <classes> <class name="tests.Class1"/><class name="tests.Class2"/> <class name="tests.Class3"/><class name="tests.Class4"/> <class name="tests.Class5"/><class name="tests.Class6"/> </classes> </test> <test name="RemainingFourSequential".

Parameterization in TestNG

Use @Parameters for run configuration from testng.xml and @DataProvider for multiple test data rows. DataProvider often returns Object[][] and causes the same test method to execute once per row. Keep passwords and tokens in environment variables or a secrets manager, not source code.

DataProvider vs XML parameters

@Parameters supplies named configuration values such as browser or environment. @DataProvider supplies multiple data sets to a test, such as different users, inputs and expected results. Use XML parameters for execution settings and DataProvider for data-driven testing.

Dependency tests in TestNG

Use dependsOnMethods or dependsOnGroups when a test genuinely requires a prerequisite. If the prerequisite fails, the dependent test is normally skipped. Avoid long dependency chains because they make suites fragile; prefer independent tests with their own setup where possible. Ensure cleanup runs reliably.

String palindrome program

A palindrome reads the same forwards and backwards. This example ignores case, spaces and punctuation.

Integer palindrome

Reverse the digits and compare with the original. Negative numbers are treated as not palindromes in this example.

HashMap and Hashtable sample

HashMap allows a null key and null values; Hashtable does not. Hashtable synchronizes its methods but is a legacy choice.

Sample code for threads

Calling start() schedules a new thread; calling run() directly does not start a separate thread. Avoid sharing a non-thread-safe WebDriver instance between parallel tests. Runnable task = () -> System.out.println( "Running on " + Thread.currentThread().getName()); Thread t1 = new Thread(task, "worker-1"); Thread t2 = new Thread(task, "worker-2"); t1.start(); t2.start(); t1.join(); t2.join();.

Given array {1,2,2,3,4,4,5,5,6,7}

Use sets or a frequency map to identify duplicate values. The array's unique duplicate values are 2, 4 and 5; values occurring exactly once are 1, 3, 6 and 7.

Store duplicates in a separate array

This solution preserves first-seen order and adds each duplicate value only once.

Store non-duplicates in another array

If non-duplicates means values occurring exactly once, the result is {1, 3, 6, 7}. A LinkedHashMap preserves input order.

Professional experience

I have around 13 years of experience in software testing, including manual and automation testing, test planning, execution, defect lifecycle management and regression. My automation background includes Java, Selenium WebDriver, TestNG, Cucumber and POM-based hybrid framework design. I also have experience with Playwright, ETL testing and JMeter. In Agile teams, I clarify requirements, assess risk, investigate failures and work with developers and business stakeholders to support releases.

What framework are you currently using?

My current framework is a Cucumber + POM hybrid. Feature files contain Gherkin scenarios, step definitions connect scenarios to Java code, and page classes encapsulate locators and UI actions. Reusable utilities support waits, dropdowns and configuration, while Maven and Git support build execution and collaboration. Align this description with the actual framework repository.

Why POM?

POM separates page-specific locators and actions from test logic. When the UI changes, updates are usually isolated to the relevant page class instead of duplicated across tests. It improves reuse, readability and maintenance. POM is a design pattern, not a complete framework; test data, configuration, assertions, reporting and execution still need to be designed.

Other frameworks worked with

Be truthful and distinguish hands-on experience from familiarity. You might discuss TestNG-based Selenium automation, reusable utility-driven frameworks, Cucumber/BDD and Playwright if you have used them. For each, explain the project context, your contribution and one advantage or trade-off.

Current framework vs previous framework

Compare concrete features: Cucumber can make workflows readable to business stakeholders; POM centralises locators and actions; utilities reduce duplication; configuration supports environments; reports and screenshots help diagnose failures; and CI runs give faster feedback. Also mention trade-offs such as extra step-definition maintenance or overly large page classes. Support the comparison with an actual project example.

Rate yourself in Selenium

A sample rating is 4/5 if justified: I can build and maintain WebDriver scripts, select locators, handle waits, frames, windows, alerts, dropdowns and dynamic elements, and integrate tests into a framework. I am continuing to improve in advanced browser behaviour, large-suite optimisation and intermittent-failure diagnosis. Be ready to demonstrate these skills.

Types of locators

Standard By strategies are id, name, className, tagName, linkText, partialLinkText, cssSelector and xpath. Selenium 4 also offers relative locators such as above, below, toLeftOf, toRightOf and near. Prefer stable unique attributes; avoid absolute XPath and fragile positional locators where possible.

Locators used most

I prefer id or name when stable and unique, CSS selectors for concise attribute matching, and XPath when relationships or text-based selection are needed. Stable test attributes such as data-testid are useful when available. I verify that a locator matches the intended single element and avoid generated IDs that change between runs.

Why prefer id?

An ID is usually readable and intended to be unique, so it can be easy to maintain and efficient. However, IDs may be duplicated or generated dynamically. I check stability across sessions and environments; otherwise I use a stable CSS selector, test attribute or carefully designed XPath.

Major issues encountered

Common issues include dynamic elements, synchronisation, stale element references, duplicate locators, flaky tests, unstable environments, test-data conflicts, uploads/downloads, iframes, multiple windows, OTP dependencies and changing requirements. Select two or three that you personally faced and explain impact, root cause, action and result.

Steps taken to overcome issues

I reproduce the failure and collect screenshots, logs, console/network evidence and test data. I determine whether the cause is a product defect, environment, data or automation. For timing, I use explicit waits for the expected state rather than fixed sleeps; for locators, I select stable attributes and check uniqueness; for stale elements, I re-locate after DOM updates; for data conflicts, I isolate data and clean up. I rerun tests and document the root cause.

Rate yourself in Java

Keep this consistent with your answer to question 13. For example, 3.5–4/5 if accurate: I am comfortable with OOP, collections, strings, arrays, exceptions and reusable automation methods, and I am improving in concurrency, streams, JVM behaviour and design patterns. Be ready to code examples.

Rate yourself in DB/query formation

A sample is 3/5 if accurate: I can write SELECT queries with WHERE, ORDER BY, GROUP BY, HAVING, joins, aggregate functions and subqueries, and validate application data. I am improving in complex query optimisation, window functions and execution plans. Practise joins, duplicate-row detection and second-highest salary queries.

Have you worked in SoapUI?

If yes, discuss WSDL, SOAP/XML requests, headers, authentication, response assertions and test suites. If not, be honest: “My stronger hands-on API experience is with and REST service testing, including WSDL, XML payloads and response assertions, but I would not claim extensive hands-on experience unless I have used it directly.”.

Types of websites and design-specific issues

Describe only application types you have actually tested. Single-page apps may have asynchronous rendering and changing DOMs; data grids can involve pagination, sorting and virtual scrolling; booking systems can have slot contention and time-zone issues; responsive sites have layout breakpoints; upload workflows have format/size/network failures; and role-based portals have session and access-control risks. Explain how you chose test cases based on design and business risk.

Challenges faced in your project

Use one genuine story in Situation, Task, Action and Result format. Example: asynchronous rendering caused intermittent automation failures. I investigated the failure, replaced fixed sleeps with explicit waits tied to expected states, improved locator stability, and added useful failure evidence. I reran the scenarios to confirm Describe a genuine incident and include only results you can substantiate.

Questions

  1. Can you brief about yourself.
  2. What is the difference between hashmap and hashtable.
  3. Difference between stringbuffer and string classes.
  4. What is testing
  5. What are different types of testing
  6. What are the types of testing you know apart from functional and performance testing.
  7. what is security testing
  8. Where would you see yourself in the next 2 years
  9. what is compatability testing.
  10. What is code coverage
  11. Why are you looking for change.
  12. What are your achievements in your project.
  13. What are the challenges you had in your project.
  14. How would rate yourself in java out of 5.
  15. What is garbage collector in java
  16. How do you achieve multiple inheritance in java.
  17. What is the difference between interface and abstract class.
  18. Write a program to find the prime number
  19. Some questions of reasoning, probability.
  20. How do you update your knowledge.
  21. What is stlc
  22. Can you tell me the output of each component in STLC.
  23. Have you done anything innovative in the past 3 years for which you felt very happy?
  24. What tools you use in QA automation.
  25. What is selenium.
  26. Explain about your selenium framework.
  27. What is the repositry you have used for objects in framework.
  28. Can you write a sample webdriver script for login functionality of gmail.
  29. What are the different annotations in TestNG.
  30. What is the use of @BeforeTest annotation.
  31. How do you access the methods in TestNG class file along with parameters.
  32. I have a package which has 10 class files, i would like to run first 6 class files in parallel and rest 4 in sequential how do you that.
  33. Write the structure of TestNG xml file for the above scenario with parallel value as "tests" and "classes"
  34. How do you do parameterization in testNG
  35. How is dataprovider different from passing parameters from testng xml file.
  36. How do you handle dependency tests cases in testNG.
  37. write the code for following: 1. Check if the given string is palindrome or not.
  38. Check if the given integer is palindrome or not.
  39. Write a sample code for hashmap and hashtable.
  40. write a sample code for threads
  41. Given an array int a[] = int a{1,2,2,3,4,4,5,5,6,7}
  42. Find the duplicates in the above array and store in to a seperate array
  43. Find the non duplicates and store in another array.
  44. Please explain about your professional experience?
  45. What is frame work are using currently?
  46. Why POM<Page Object Model>?
  47. What are the other frameworks have you worked?
  48. What are advantages you feel with the current framework compare to the previous one you have used?
  49. How do you rate yourself in selenium?
  50. What are the different type of locators ?
  51. What locators you have used the most?
  52. Why you prefer id ?
  53. What are the major you have encountered in your projects so far?
  54. What are steps you have taken to overcome those?
  55. How do you rate yourself in java?
  56. How do you rate yourself in DB /query formation?
  57. Have you worked in soap UI?
  58. What are different kind of websites you have encountered so far? Like what kind of issue < according to the site design> ?
  59. What are the challenges you faced in your project

Back to Company Wise Interview Questions