Skip to content

ICICI Bank Software Testing Interview Questions & Answers

Curated interview practice questions with answers. These are practice scenarios, not a verified list of past interview questions.

About ICICI Bank hiring for Software Testing roles

ICICI Bank is a large Indian private sector bank offering retail, corporate, digital and international banking. Its technology, analytics and operations teams work on products like iMobile Pay, credit decisioning, fraud detection and customer analytics. It hires for data analysts, risk analysts, testers, software engineers and management trainees.

For Software Testing roles, this ICICI Bank practice set focuses most on Agile, SQL and API Testing (8), Test Case Design (6), Bug Life Cycle and Jira (5), Database Testing (5). It has 9 easy, 26 medium, 5 hard questions, so you can start easy and work up to the harder ones.

Company type
Banking & finance
Headquarters
Mumbai, India
Main India offices
Mumbai, Hyderabad, Chennai, Bengaluru

ICICI Bank Software Testing interview process

  1. Online assessment (aptitude + domain)
  2. Technical or functional interview
  3. Managerial round
  4. HR round

Typical pattern based on public candidate experiences. Rounds vary by role, team and year.

Solved for ICICI BankStart practicing
3 QUESTIONS FREESign up to unlock the full question bank and track your progress.Unlock every question and answer, then continue practising company-wise and package-wise.
3 questions free Unlock the rest in seconds
01

How do you capture screenshots, videos and traces when an automated test fails?

Save to ▾
Show answer
Most frameworks support this through configuration. In Playwright, set screenshot to only-on-failure, video to retain-on-failure and trace to on-first-retry in the config, then open the trace viewer to step through actions, network calls and the page state. In Selenium, call save_screenshot in a teardown hook when a test fails. Store these artefacts in CI so anyone can debug the failure without rerunning it.
02

A developer marks your bug as fixed, but it still fails. What do you do?

Save to ▾
Show answer
First confirm you are testing the right build, which contains the fix, and clear the cache. Repeat the exact steps and data from the bug. If it still fails, reopen the bug with a comment stating the build number, what you did and the actual result, with a fresh screenshot or video. Talk to the developer directly if the steps differ from what they tested, so the fix is not tested on a different scenario.
03

What is the difference between retesting and regression testing?

Save to ▾
Show answer
Retesting, or confirmation testing, checks that a specific bug that was fixed now works, using the same steps as the original bug. Regression testing checks that the fix or a new change has not broken other, previously working features. Retesting is planned for failed cases only, while regression covers a wider set of passing cases. Retesting usually comes first, then regression around the changed area.
04

SQL: find customers who placed more than three orders in the last 30 days.

Save to ▾
Show answer
SELECT c.id, c.name, COUNT(o.id) AS order_count FROM customers c JOIN orders o ON o.customer_id = c.id WHERE o.order_date >= CURRENT_DATE - INTERVAL '30' DAY GROUP BY c.id, c.name HAVING COUNT(o.id) > 3 ORDER BY order_count DESC;
05

What is the difference between statement coverage and branch coverage?

Save to ▾
Show answer
Statement coverage measures the percentage of code statements executed by tests. Branch coverage measures whether every decision outcome, true and false, has been executed. Branch coverage is stronger: for 'if (amount > 1000) applyDiscount()', one test with 1500 gives 100 percent statement coverage, but you need a second test with 500 to cover the false branch. 100 percent branch coverage implies 100 percent statement coverage, not the other way round.
06

SQL: verify that row counts and totals match between a source table and a target table after a data load.

Save to ▾
Show answer
-- Compare counts and sums side by side; both columns must match SELECT (SELECT COUNT(*) FROM staging_orders) AS src_count, (SELECT COUNT(*) FROM dw_orders) AS tgt_count, (SELECT SUM(amount) FROM staging_orders) AS src_amount, (SELECT SUM(amount) FROM dw_orders) AS tgt_amount;
07

Write test cases for a date of birth field.

Save to ▾
Show answer
Verify a valid date is accepted and saved in the right format. Check the minimum age rule, such as 18 years, using boundary dates of exactly 18 today and one day short. Reject future dates and impossible dates like 30 February. Test leap year dates like 29 February 2004. Check manual typing and the picker give the same result, the field is mandatory if required, and the date displays correctly after saving.
08

How do you handle a bug found late in a release cycle?

Save to ▾
Show answer
Assess impact and risk, discuss with product and dev, decide to fix, defer with a workaround or delay release, and document the decision.
09

Write a Gherkin scenario for applying a valid coupon at checkout.

Save to ▾
Show answer
Feature: Coupon at checkout Scenario: Valid coupon reduces the total Given I am logged in with 1000 rupees of items in my cart And the coupon 'SAVE10' gives 10 percent off When I apply the coupon 'SAVE10' Then the discount shown is 100 rupees And the order total is 900 rupees
10

What is exploratory testing?

Save to ▾
Show answer
Learning, test design and execution at the same time, without scripted cases — time-boxed sessions with a charter (e.g. 'explore checkout with coupons'), noting bugs and ideas. Great for finding edge cases.
11

The sprint ends tomorrow and two stories are still in testing. What do you do?

Save to ▾
Show answer
Tell the Scrum Master and product owner today, not at the review. Focus testing on the acceptance criteria and the riskiest paths of the story with the most value, and ask a developer to help with test data or simple checks. If a story cannot be finished with quality, it should be carried over, not marked done with untested parts. Raise the cause in the retrospective, such as late handover.
12

What is defect clustering?

Save to ▾
Show answer
The observation that a small number of modules contain most defects, so testing should focus on those areas.
13

How is back-end database testing different from front-end UI testing?

Save to ▾
Show answer
UI testing checks what the user sees and does: screens, buttons, messages and flows. Database testing checks what happens underneath: whether the right rows are inserted, updated or deleted, whether constraints hold and whether data stays consistent across tables. A screen can show a success message while the database saved a wrong amount or nothing at all. So testers combine both, using SQL to confirm that every important UI action leaves the database in the expected state.
14

The developer says "it's not a bug". What do you do?

Save to ▾
Show answer
Re-check the requirement, reproduce with clear steps and evidence (screenshots, logs), discuss with the BA/PO and record the final decision.
15

What is a hotfix?

Save to ▾
Show answer
An urgent patch released outside the normal schedule to fix a critical production defect, followed by regression testing and merge back to the main branch.
16

Tell me about a device-specific bug you found and how you reported it.

Save to ▾
Show answer
Model answer: Situation: users of one budget phone model reported that the camera upload screen was black. Task: reproduce it. Action: I borrowed the same model, found the issue only appeared when the battery saver was on, and logged the bug with the device model, OS version, logs and a video. Result: the developer fixed the camera initialisation, and we added that model to our device matrix.
17

What is the difference between a walkthrough and an inspection?

Save to ▾
Show answer
Both are static review techniques. A walkthrough is informal and led by the author, who explains the document or code to peers to share knowledge and gather feedback. An inspection is the most formal review: it has defined roles such as moderator, reader and scribe, uses checklists, needs preparation and records defects and metrics. Inspections find more defects but take more effort.
18

What is a REST API?

Save to ▾
Show answer
An API style using HTTP methods on resources identified by URLs, usually exchanging JSON and staying stateless.
19

What is the difference between an error, a defect and a failure?

Save to ▾
Show answer
A human error causes a defect in the code, and when that defect is executed it produces a failure visible to users.
20

What is ETL testing and how does it relate to database testing?

Save to ▾
Show answer
ETL testing validates data that is Extracted from source systems, Transformed by business rules and Loaded into a target such as a data warehouse. It is a specialised form of database testing. Checks include source-to-target row counts, transformation rules such as currency conversion, handling of NULLs and duplicates, rejected-record logs, incremental loads that pick up only new changes and reconciliation of totals between source and target.
21

What is the Page Object Model?

Save to ▾
Show answer
The Page Object Model is a design pattern where each page or major component gets a class that holds its locators and actions, such as LoginPage with a login method. Tests call these methods instead of using locators directly. When the login button changes, you update one place instead of fifty tests. Tests become readable, like steps a manual tester would write, and duplication drops. Keep assertions mostly in tests, not page objects.
22

What is the difference between a build and a release?

Save to ▾
Show answer
A build is a compiled version of the software created from the latest code, often many times a day, and given to QA for testing. A release is a tested, approved version delivered to customers or production, usually with release notes and a version number. Many builds can go through testing before one of them is promoted as a release. Testers always note the build number in bug reports.
23

A developer asks you to test a feature that has no acceptance criteria. How do you proceed?

Save to ▾
Show answer
First ask the product owner or business analyst for the expected behaviour and write down the answers as draft acceptance criteria. Meanwhile, explore the feature, compare it with similar existing features and list assumptions. Share the assumptions in the story so everyone agrees before you sign off. Raise the missing criteria in the next refinement so future stories are not picked up without them.
24

What is error guessing?

Save to ▾
Show answer
Using experience to guess where defects likely hide, such as empty fields, special characters or unexpected sequences, and designing tests for them.
25

How would you choose a device matrix for testing an app in India?

Save to ▾
Show answer
Use the app's analytics, or market data if it is a new app, to find the top devices, OS versions and screen sizes. In India, cover a strong share of budget and mid-range Android phones with low RAM, a few manufacturers' custom Android skins, the two or three latest Android versions, and recent iPhones if iOS is supported. Add a tablet if relevant. Review the matrix each quarter and use a cloud device lab for wider coverage.
26

What do you check when testing an API in Postman?

Save to ▾
Show answer
Status code, response body and schema, headers, response time, error messages for invalid input, authentication (401/403) and that data is saved in the database.
27

How do you test pagination, sorting and filtering through an API?

Save to ▾
Show answer
Send page, size, sort and filter parameters, then verify counts, order, boundaries (first, last, empty page) and invalid parameter handling.
28

What is defect removal efficiency?

Save to ▾
Show answer
Defect removal efficiency shows how many defects the team found before release. DRE = defects found before release divided by (defects found before release plus defects found after release), multiplied by 100. If QA found 90 bugs and users reported 10, DRE is 90 percent. A falling DRE means testing is missing more defects, and the escaped bugs should be analysed to improve test coverage.
29

The UI shows the correct order total, but the database has a different value. What do you check?

Save to ▾
Show answer
Note the order ID and compare the UI value, the API response and the database value to find where they differ. Check if the UI calculates the total on the screen instead of using the saved value, whether taxes, discounts or rounding are applied at different layers and whether a later update job changed the record. Log the bug with all three values, because invoices and reports will use the database figure.
30

What is a sprint planning meeting and what does QA contribute?

Save to ▾
Show answer
The team selects stories for the sprint. QA helps estimate testing effort, clarifies acceptance criteria and flags dependencies and risks.
31

A form saves names with an apostrophe, like O'Brien, incorrectly or fails to save them. What do you test?

Save to ▾
Show answer
This suggests the input is not handled safely, possibly string-built SQL, which is also a SQL injection risk. Test names with apostrophes, double quotes, Hindi and other Unicode text, emojis, leading spaces and maximum length. Query the database to confirm the exact stored value and character encoding. Then check the value displays correctly everywhere it is read back. Log a high-severity bug and mention the possible injection risk.
32

Tell me about a time you used a test design technique to reduce the number of test cases.

Save to ▾
Show answer
Model answer: Situation: in my training project, a registration form had age, state and course fields, and my first draft had over 60 test cases. Task: cut effort without losing coverage. Action: I applied equivalence partitioning and boundary values to age and pairwise combinations for state and course. Result: I covered the same rules with 18 cases, my mentor approved them, and execution finished in half the time.
33

How do you write a good accessibility bug report?

Save to ▾
Show answer
Give a clear title, such as 'Checkout: Place Order button not reachable by keyboard'. Include the page URL, browser, operating system and assistive technology with versions. Write exact steps, what was announced or happened, and what was expected. Add the WCAG success criterion, such as 2.1.1 Keyboard, and the user impact. Attach a screenshot or audio recording, and suggest a fix when obvious. Severity should reflect whether users are fully blocked.
34

What is SQL injection and how can a tester check for it at a basic level?

Save to ▾
Show answer
SQL injection happens when user input is added directly into a database query, letting an attacker change the query to read or modify data. A tester can enter inputs like a single quote or ' OR '1'='1 in login, search and URL parameters and watch for database errors, unexpected results or a login bypass. Only test in approved environments. The real fix is parameterised queries, not input filtering alone.
35

SQL: find rows where mandatory columns are NULL or empty in a customers table.

Save to ▾
Show answer
-- Mandatory fields: name, email, phone SELECT id, name, email, phone FROM customers WHERE name IS NULL OR TRIM(name) = '' OR email IS NULL OR TRIM(email) = '' OR phone IS NULL OR TRIM(phone) = ''; -- Expected result: no rows
36

Write test cases for a one-to-one chat feature.

Save to ▾
Show answer
Send and receive text messages and check order and timestamps. Test sent, delivered and read status. Send emojis, long messages, links and attachments within and over the size limit. Check messages sent while offline are queued and delivered on reconnect. Verify blocking a user stops messages. Test notifications when the app is in background. Check chat history after reinstall or on a second device, and that deleted messages disappear for both users if supported.
37

What is cause-effect graphing?

Save to ▾
Show answer
Cause-effect graphing is a black box technique that models input conditions (causes) and output actions (effects) with logical relations like AND, OR and NOT. The graph is converted into a decision table, and each column becomes a test case. It is useful when outputs depend on combinations of inputs, such as loan approval based on income, age and credit score. It helps find missing or contradictory rules in the requirement.
38

A web app gets slower the longer a user keeps it open. How do you check for a memory leak as a manual tester?

Save to ▾
Show answer
A memory leak happens when an application keeps holding memory it no longer needs, so usage grows the longer it runs. A manual tester may notice the app getting slower over a long session, a browser tab using more and more memory in Task Manager or the browser's memory panel, or a mobile app crashing after repeatedly opening and closing a screen. Report the steps, duration and memory readings over time.
39

How do you test API error handling for invalid input?

Save to ▾
Show answer
Send requests with missing required fields, wrong data types, values beyond limits, invalid formats such as a bad email, unknown fields and an empty or malformed JSON body. The API should return a 4xx code such as 400 or 422, a clear error message that names the field, and no stack trace or database details. Also check that nothing was partly saved in the database after the failed request.
40

Your automated tests pass one by one but fail randomly when run in parallel. How do you fix the test data so tests are independent?

Save to ▾
Show answer
Each test should create the data it needs, usually through an API or database helper, use unique values such as an email with a timestamp, and clean up afterwards. Avoid tests that depend on data made by another test or on a shared account other tests change. For fixed reference data, seed it before the suite runs. Independent data allows tests to run in parallel and in any order without random failures.

Tips to crack the ICICI Bank Software Testing interview

  • Learn Indian banking basics such as loan types, NPAs, CASA ratio and RBI regulations for interviews.
  • Use iMobile Pay and think about features you would test or improve as a QA or analyst candidate.
  • Revise SQL and Excel with examples on customer segmentation, credit risk or campaign analysis.
  • Keep a one-minute story ready for every project on your CV: problem, your part, tools, result.
  • Practise the hard questions on this page aloud; ICICI Bank interviewers usually ask follow-ups on your first answer.

Frequently asked questions

How many rounds are there in the ICICI Bank Software Testing interview?

Candidates usually go through 4 stages: Online assessment (aptitude + domain); Technical or functional interview; Managerial round; HR round. The exact rounds change with the role, team, location and your experience, so confirm the process with the recruiter.

Which topics should I prepare for the ICICI Bank Software Testing interview?

This practice set leans on Agile, SQL and API Testing (8), Test Case Design (6), Bug Life Cycle and Jira (5), Database Testing (5). Revise those first, then practise explaining one or two of your own projects end to end, because most ICICI Bank interviewers ask you to walk through real work.

Are these the exact questions asked at ICICI Bank?

No. These are curated practice questions that match the skills and difficulty usually tested in banking & finance interviews like ICICI Bank's. They are not a leaked or verified list of past questions.

Where does ICICI Bank hire Software Testing professionals in India?

ICICI Bank has large teams in Mumbai, Hyderabad, Chennai, Bengaluru. Openings and locations change often, so check the ICICI Bank careers page and filter by city and experience.

Software Testing questions for similar companies