Skip to content

Software Testing Interview Questions for Freshers

40 questions with answers for candidates with Freshers — 26 easy, 13 medium, 1 hard.

What interviewers expect: freshers

Interviewers expect clear fundamentals: what testing is, SDLC and STLC, testing types, test case writing for simple features, the bug life cycle and severity versus priority. Basic SQL queries are common. They look for structured thinking, curiosity and good communication more than tool experience, and often ask you to explain your academic or internship project testing.

This set is weighted towards Test Case Design (7), Testing Types (6), Bug Life Cycle and Jira (6), Manual Testing Basics (5).

Testing fundamentals and terminology Writing test cases for common features Bug life cycle and bug reports Basic SQL queries
Solved at this levelStart 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

What is data masking and why is it used in test databases?

Save to ▾
Show answer
Data masking replaces real sensitive values with realistic but fake ones, for example changing real phone numbers to valid-looking dummy numbers and real names to generated names. It lets teams test with production-like data volume and patterns without exposing customer information. It also supports compliance with India's Digital Personal Data Protection Act. Testers should check that masked data still passes validation rules and keeps relationships between tables intact.
02

What is the difference between ad hoc testing and monkey testing?

Save to ▾
Show answer
Ad hoc testing is informal testing without test cases, done by a tester who understands the application and tries likely weak areas based on experience. Monkey testing gives random inputs and actions, often without knowing the application, to see if it crashes. Ad hoc testing is targeted and good at finding logical bugs, while monkey testing is good at finding stability issues and is often automated.
03

Explain the bug life cycle.

Save to ▾
Show answer
New → Assigned → Open → Fixed → Retest → Verified → Closed, with Reopened, Rejected, Deferred and Duplicate as side paths.
04

Explain SQL joins briefly.

Save to ▾
Show answer
INNER returns matching rows, LEFT keeps all left rows, RIGHT keeps all right rows and FULL keeps all rows from both tables.
05

How do you handle it when a reviewer criticises your test cases?

Save to ▾
Show answer
I treat review comments as free help. I ask for specifics if a comment is unclear, fix valid points quickly and explain my reasoning if I disagree, with the requirement in hand. For example, a senior once said my cases missed negative paths; I added them and also made a personal checklist for future reviews. Repeated comments show me a skill gap I should work on, not a personal attack.
06

What is mobile app testing and what extra checks does it need?

Save to ▾
Show answer
Test on real devices and OS versions, interrupts such as calls, battery, network changes, gestures, permissions and app store guidelines.
07

What goes into a daily test status report?

Save to ▾
Show answer
Include the date, build or release, and planned versus executed test cases with pass, fail, blocked and not run counts. List new bugs by severity, open critical bugs with owners, retests done and any blockers such as environment downtime or missing data. Add a short note on risk and the plan for the next day. Keep it to one page so managers can read it in two minutes.
08

SQL: how do you test that a primary key rejects duplicate values?

Save to ▾
Show answer
-- Insert a row, then try the same key again; the second insert must fail INSERT INTO users (id, email) VALUES (9001, 'a@test.com'); INSERT INTO users (id, email) VALUES (9001, 'b@test.com'); -- Expected: duplicate key or unique constraint error SELECT COUNT(*) FROM users WHERE id = 9001; -- Expected: 1 DELETE FROM users WHERE id = 9001;
09

What is the role of a manual tester in a software team?

Save to ▾
Show answer
A manual tester understands requirements, writes test scenarios and test cases, prepares test data, executes tests on each build, logs clear bug reports and retests fixes. They also do exploratory testing, join stand-ups and reviews, and give a quality status before release. Beyond finding bugs, a good manual tester represents the end user and raises usability or requirement gaps early, when they are cheap to fix.
10

What is TDD vs BDD?

Save to ▾
Show answer
TDD writes unit tests before code to drive design; BDD describes behaviour in business language scenarios that become automated acceptance tests.
11

Why is exhaustive testing impossible?

Save to ▾
Show answer
Exhaustive testing means trying every possible input, path and combination, which is practically infinite for real software. Even a single text field accepting 20 characters has more combinations than you could ever run. So testers use risk and techniques like equivalence partitioning and boundary value analysis to select a small set of tests that give high confidence. The goal is enough coverage of important risks, not every possible case.
12

Tell me about a time you found an important bug that others missed.

Save to ▾
Show answer
Model answer: Situation: before a release of an insurance app, all regression tests had passed. Task: I was doing a final exploratory round. Action: I renewed a policy on the last day of the month and saw that the premium was calculated for 31 days in a 30-day month. I logged it with exact data and the formula difference. Result: the date logic was fixed before release, and I added month-end cases to the suite.
13

What is CSRF and how is it prevented?

Save to ▾
Show answer
Cross-site request forgery tricks a logged-in user's browser into sending an unwanted request to a site, such as changing their email, because the browser automatically includes cookies. Prevention includes anti-CSRF tokens in forms, SameSite cookie settings and re-authentication for sensitive actions. Testers check that state-changing requests fail when the token is missing or reused, and that such actions are not done through GET requests.
14

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.
15

What is system testing?

Save to ▾
Show answer
System testing tests the complete, integrated application against the requirements in an environment close to production. It is done by the testing team after integration testing and before UAT. It covers functional testing of all features plus non-functional aspects such as performance, security, usability and compatibility. It is black box testing, so the tester checks behaviour from the user's point of view without looking at the code.
16

Why is alt text important and how do you test it?

Save to ▾
Show answer
Alt text gives a text alternative for images so screen reader users get the same information. Check that informative images have short, meaningful alt text, such as 'Bar chart showing sales doubled in 2025', that decorative images have empty alt so they are skipped, and that image buttons describe the action, such as 'Search', not the picture. Inspect the alt attribute in developer tools and listen with a screen reader.
17

What is a test environment?

Save to ▾
Show answer
The hardware, software, data and configuration where testing happens, set up to mirror production as closely as practical.
18

Write test cases for a multi-select dropdown.

Save to ▾
Show answer
1. Open and close by click and keyboard. 2. Select one, then several options; all show as chips or a count. 3. Deselect an option. 4. Select all and clear all, if available. 5. Search inside the list filters options. 6. Maximum selection limit is enforced with a message. 7. Required field shows an error if none selected. 8. Saved selection persists after refresh. 9. Long option names do not break layout. 10. Screen reader announces selected state.
19

What is UAT?

Save to ▾
Show answer
User Acceptance Testing — end users or the client verify that the system meets business needs in a production-like environment before go-live.
20

Write test cases for a lift (elevator).

Save to ▾
Show answer
Moves to the chosen floor, doors open and close, door sensor stops closing on obstruction, overload alarm, emergency button, behaviour in a power cut, max capacity and the floor display.
21

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.
22

The build arrived three days late but the release date has not moved. How do you prioritise execution?

Save to ▾
Show answer
Rank test cases by business risk and usage: critical flows like login, payment and data saving first, then new features, then high-risk regression from past defects, and cosmetic checks last. Run smoke testing immediately to avoid wasting time on a broken build. Share the reduced plan with the lead and product owner so they know what will not be covered, and get agreement on the remaining risk.
23

Functional vs non-functional testing?

Save to ▾
Show answer
Functional testing checks what the system does (login, checkout). Non-functional testing checks how well it does it (performance, security, usability, compatibility).
24

How does QA use Jira filters and dashboards?

Save to ▾
Show answer
Save filters for common views such as my open bugs, bugs ready for retest, blockers in the current sprint and bugs by fix version. Add them to a dashboard with gadgets like pie charts by priority, created versus resolved trend and a sprint bug list. Share the dashboard with the team so status is visible without manual reports. Testers start their day from the ready-for-retest filter.
25

What do you check during UI or visual testing?

Save to ▾
Show answer
Check alignment, spacing, fonts, colours and images against the design. Verify text is not cut off or overlapping, buttons and links look clickable and show hover and disabled states, and error messages appear in the right place. Check responsive behaviour on different screen widths and zoom levels. Confirm icons and images load and have alt text. Compare with the design file and take screenshots for any differences.
26

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.
27

A hotfix build arrives and you have only 15 minutes before deployment. How do you sanity check it?

Save to ▾
Show answer
Read the hotfix ticket to know exactly what changed. First verify the fix with the original reproduction steps and data. Then check the directly connected flows, for example if the fix is in coupon calculation, test applying, removing and paying with a coupon. Finish with a quick smoke of login and the main business flow. Report the result immediately, mentioning what was and was not covered.
28

SQL: how do you test a foreign key defined with ON DELETE CASCADE?

Save to ▾
Show answer
-- Create a parent and child, delete the parent, child rows must disappear INSERT INTO customers (id, name) VALUES (501, 'Cascade Test'); INSERT INTO orders (id, customer_id, total) VALUES (7001, 501, 250); DELETE FROM customers WHERE id = 501; SELECT COUNT(*) FROM orders WHERE customer_id = 501; -- Expected: 0 -- Also test inserting an order for a non-existent customer: it must fail
29

What is a flaky test and what usually causes it?

Save to ▾
Show answer
A flaky test passes and fails on the same code without any change. Common causes are timing problems such as fixed sleeps or missing waits, tests depending on each other or on shared data, unstable locators, animations, third-party services, test order in parallel runs and environment issues like slow servers. Flaky tests destroy trust in the suite, so teams quarantine them, find the root cause and fix it rather than adding retries forever.
30

What should a tester verify about HTTPS on a website?

Save to ▾
Show answer
Check every page and API uses HTTPS, and plain HTTP redirects to HTTPS. Verify the certificate is valid, not expired, and matches the domain, with no browser warnings. Look for mixed content, where an HTTPS page loads scripts or images over HTTP. Check login and payment forms submit only over HTTPS and that cookies holding session data have the Secure flag.
31

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.
32

What is defect density?

Save to ▾
Show answer
The number of defects per size of software, for example defects per thousand lines of code or per module, used to compare quality.
33

What is the difference between a test case and a test scenario?

Save to ▾
Show answer
A scenario is a high-level thing to test (user logs in); test cases are the detailed steps and data that verify it.
34

What are components, labels and fix versions in Jira?

Save to ▾
Show answer
Components are fixed sub-parts of a project, such as Payments or Login, often with a default owner. Labels are free-text tags, such as regression or ui, that anyone can add for grouping. Fix version is the release in which the issue is planned to be fixed, while affects version is where the bug was found. Testers use these fields to filter bugs and to build release-wise reports.
35

What does POUR mean in accessibility?

Save to ▾
Show answer
POUR is the four principles behind WCAG. Perceivable: users can see or hear the content, for example images have alt text and videos have captions. Operable: everything works with a keyboard and users have enough time. Understandable: text is clear and forms explain errors. Robust: content works with assistive technologies such as screen readers. Every WCAG success criterion sits under one of these four principles.
36

How would you test a pen?

Save to ▾
Show answer
First ask what type of pen and who the users are. Functional: it writes smoothly, ink flows without leaking, the cap or click mechanism works and the ink colour matches the label. Non-functional: comfort of grip, writing length before ink runs out, performance at different temperatures and on different paper. Negative: dropping it, pressing hard, leaving it uncapped. Safety: the cap is non-toxic and has an air hole. This shows structured thinking, not just a list.
37

What is a performance baseline?

Save to ▾
Show answer
A performance baseline is a set of measurements of the current system under a known load, such as response times, throughput, error rate and resource usage. Every new build or release is compared with it to spot regressions. For example, if the checkout API had p95 of 800 milliseconds at 200 users last release and now shows 1.5 seconds, the change needs investigation. A benchmark compares against an industry or competitor standard.
38

What is the difference between a bug and an enhancement?

Save to ▾
Show answer
A bug is behaviour that deviates from agreed requirements; an enhancement is a new or improved capability beyond the current requirements.
39

What is the difference between a high-level and a low-level test case?

Save to ▾
Show answer
A high-level test case states what to test without detailed steps or exact data, for example 'Verify user can reset password using registered email'. A low-level test case gives exact steps, test data and expected results for each step. High-level cases are quick to write and suit experienced testers or changing features. Low-level cases suit regulated projects, new team members and cases that will later be automated.
40

What is a test scenario for the login functionality at a high level?

Save to ▾
Show answer
Valid login, invalid login, forgot password, locked account and session handling are the main scenarios to cover.

Frequently asked questions

What is asked in Software Testing interviews for Freshers?

Interviewers expect clear fundamentals: what testing is, SDLC and STLC, testing types, test case writing for simple features, the bug life cycle and severity versus priority. Basic SQL queries are common. They look for structured thinking, curiosity and good communication more than tool experience, and often ask you to explain your academic or internship project testing.

How many questions should I practise before a Software Testing interview?

Work through all 40 questions here, then the company-wise sets for the employers you are targeting. Quality matters more than count: be able to explain why each answer is right.

Which topics matter most for Freshers?

Focus first on Testing fundamentals and terminology, Writing test cases for common features, Bug life cycle and bug reports, Basic SQL queries.