Skip to content

MakeMyTrip Software Testing Interview Questions & Answers

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

About MakeMyTrip hiring for Software Testing roles

MakeMyTrip is an Indian online travel company offering flights, hotels, holidays, buses and trains, and it also owns Goibibo and redBus. Its technology and analytics teams work on search, pricing, personalisation and customer service. It hires for software engineers, SDETs, business analysts and data scientists.

For Software Testing roles, this MakeMyTrip practice set focuses most on Test Case Design (7), Agile, SQL and API Testing (6), Manual Testing Basics (4), STLC and Test Planning (4). It has 3 easy, 28 medium, 9 hard questions, so you can start easy and work up to the harder ones.

Company type
E-commerce & consumer tech
Headquarters
Gurugram, India
Main India offices
Gurugram, Bengaluru

MakeMyTrip Software Testing interview process

  1. Online assessment (coding or SQL)
  2. Technical round 1
  3. Technical round 2 or case round
  4. Hiring manager round
  5. HR round

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

Solved for MakeMyTripStart 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 do testers look for during a requirement review?

Save to ▾
Show answer
Check that each requirement is clear, complete, consistent and testable. Look for vague words like fast or user-friendly, missing error handling, undefined limits, conflicting rules and missing roles or states. For each requirement ask how you would test it and what the expected result is. Record questions in a review log and get answers from the business analyst before writing test cases, so ambiguity does not turn into defects later.
02

Write test cases for an ATM withdrawal.

Save to ▾
Show answer
Valid card and PIN, wrong PIN, three failed attempts, amount above balance, amount above daily limit, invalid denomination, machine out of cash, network failure and receipt printing.
03

The test environment is down for two days just before release. What do you do?

Save to ▾
Show answer
Escalate immediately with the impact on the schedule. While it is down, prepare test data, review and update test cases, and test what you can elsewhere: API tests against another environment, UI on a developer machine or a staging copy. Track the lost hours in the status report. When the environment returns, run smoke first, then the prioritised list, and ask whether the release date or scope needs to change.
04

A user updates their phone number in the app, but the old number still appears in reports. What do you check?

Save to ▾
Show answer
First query the main users table to see whether the update was saved. If it was, check where the report reads from: a view, a reporting copy, a cache or a nightly ETL table. The report may simply be stale until the next refresh, which may be by design. If the main table still has the old value, check the API request, the update query and any errors in logs, then log a bug with both query results.
05

How do you test biometric login with fingerprint or face unlock?

Save to ▾
Show answer
Test enabling biometrics in app settings after a password login. Verify login with a registered fingerprint or face, and failure with an unregistered one, falling back to PIN or password after the allowed attempts. Remove or add a fingerprint in device settings and check the app asks for re-authentication. Test devices without biometric hardware, disabled biometrics and app behaviour after an OS update or reinstall.
06

How do you make test cases reusable and easy to maintain?

Save to ▾
Show answer
Write one clear objective per case, keep steps short and avoid hard-coding data that changes. Put shared steps such as login into a common precondition instead of repeating them. Use consistent naming, link each case to a requirement and group them by module. Keep expected results specific but not tied to exact pixel layouts. Review and update cases whenever a story changes, so the suite stays trustworthy for regression.
07

What are the characteristics of a good test case?

Save to ▾
Show answer
Clear, concise, independent, repeatable, traceable to a requirement, with precise expected results and tested data.
08

What is the difference between a known issue and an open bug at release time?

Save to ▾
Show answer
An open bug is any defect not yet resolved. A known issue is an open bug that the team has consciously agreed to release with, after assessing its impact, and has documented in release notes or support notes, often with a workaround. Every known issue is an open bug, but not every open bug should ship. QA makes sure known issues are listed and approved by the product owner.
09

Your test repository has many duplicate and outdated test cases. How do you clean it up?

Save to ▾
Show answer
Export the cases and group them by module and requirement. Mark duplicates, merge them into one well-written case, and retire cases for removed features. Check which cases have not been executed or failed in months and confirm whether they are still valid. Link the remaining cases to requirements so gaps are visible. Do it module by module with peer review, and set a rule that every story update also updates its test cases.
10

Write a Postman test script that checks the status is 201 and the response contains an id.

Save to ▾
Show answer
pm.test('Status is 201', function () { pm.response.to.have.status(201); }); pm.test('Response has id', function () { const body = pm.response.json(); pm.expect(body).to.have.property('id'); pm.expect(body.id).to.be.a('number'); });
11

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;
12

Write SQL to verify an order was saved correctly.

Save to ▾
Show answer
SELECT status, amount FROM orders WHERE order_id = 'ORD123'; -- compare with the UI, then check the matching rows in order_items
13

How do you decide which automated tests run on every pull request and which run nightly?

Save to ▾
Show answer
Pull request checks must be fast, usually under ten to fifteen minutes, and highly reliable, so they include unit tests, API tests for changed services and a small UI smoke set of critical flows. The full UI regression, cross-browser runs, long data-driven suites and performance checks run nightly or before release. Tag tests by suite, measure run times and flakiness, and move tests between suites based on value and speed.
14

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

What is integration testing and what are its approaches?

Save to ▾
Show answer
Integration testing checks that modules or services work correctly together, focusing on interfaces and data flow. Approaches: big bang, where all modules are combined at once and testing is simple to plan but defects are hard to locate; top-down, where high-level modules are tested first using stubs for lower ones; bottom-up, using drivers for higher ones; and sandwich, which mixes both. Incremental approaches make it easier to find which interface failed.
16

Write test cases for a search box.

Save to ▾
Show answer
Valid keyword, partial match, no results, special characters, very long text, empty search, case sensitivity, spelling errors, suggestions and speed of results.
17

You change the order ID in a URL and see another customer's order. What is this and what do you do?

Save to ▾
Show answer
This is an insecure direct object reference, a form of broken access control and a critical security bug, because any user can read other users' data. Stop exploring further beyond what is needed to confirm it, record the request, accounts used and evidence, and log it as a critical bug with restricted visibility. Inform the lead and security contact immediately. The fix is a server-side ownership check on every request.
18

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

What is JMeter and what does a basic test plan in it contain?

Save to ▾
Show answer
Apache JMeter is an open-source load testing tool, mainly for HTTP APIs and web pages. A basic test plan has a Thread Group that sets the number of virtual users, ramp-up time and loop count; samplers such as HTTP Requests; config elements like headers and CSV data; timers for think time; assertions on responses; and listeners or reports showing response times, throughput and errors. Run real load in non-GUI mode.
20

How do you run a moderated usability test session?

Save to ▾
Show answer
Define goals and three to five realistic tasks, such as 'Book a train ticket for next Friday'. Recruit participants who match real users. In the session, explain that you are testing the product, not them, ask them to think aloud, and avoid hinting even when they struggle. Record the screen with consent, note where they hesitate or fail, and finish with a short questionnaire. Then group findings by severity and frequency.
21

Describe how you contributed in a sprint retrospective to improve quality.

Save to ▾
Show answer
Model answer: Situation: our sprints kept ending with stories stuck in testing. Task: suggest a fix in the retrospective. Action: I showed that most stories reached QA in the last two days and proposed smaller stories, early test case sharing and developers deploying to QA daily. Result: the team tried it next sprint, and the number of stories carried over dropped from five to one.
22

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

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

You join a project in the middle of a release. How do you plan your testing?

Save to ▾
Show answer
Spend the first day learning the scope: read the release notes, user stories and test plan, and ask the lead what is at risk. Get access to the environment, tracker and test repository. Pick up a clearly defined module, run its existing test cases to learn the application and note gaps. Ask questions early in stand-up. Within a few days, take ownership of retesting and regression for that module.
25

What is a blocker bug?

Save to ▾
Show answer
A defect that stops testing or release of a feature because no workaround exists, so it is highest priority.
26

Write test cases for a signup form.

Save to ▾
Show answer
Mandatory fields, email format, password rules, duplicate email, terms checkbox, captcha, confirmation email and field length limits.
27

What is the OWASP Top 10 and why should testers know it?

Save to ▾
Show answer
The OWASP Top 10 is a widely used list of the most critical web application security risks, published by an open community project. It includes broken access control, cryptographic failures, injection, insecure design, security misconfiguration, vulnerable components and authentication failures. Testers use it as a checklist to include basic security checks in their testing and to speak the same language as security teams.
28

How do you convert existing manual test cases into automated scripts?

Save to ▾
Show answer
Pick a small set of stable, high-value regression cases first. Review each one: make steps precise, remove judgement-based checks and define clear expected results. Prepare test data that the script can create and clean up. Build reusable page objects and helpers for common steps like login. Automate, run several times to confirm stability, then link each script to its manual case ID and mark the manual case as automated.
29

A security scan says your login page can be loaded inside a frame on other sites. What is the risk and how do you confirm it?

Save to ▾
Show answer
Clickjacking tricks a user into clicking something on your site while it is hidden inside a frame on an attacker's page, for example a hidden Transfer button under a fake Play button. A tester checks whether sensitive pages can be loaded in an iframe on another site, and inspects response headers for Content-Security-Policy frame-ancestors or X-Frame-Options set to DENY or SAMEORIGIN. If the page loads in the frame, log it.
30

Tell me about a time you found a bug by checking the database directly.

Save to ▾
Show answer
Situation: a wallet refund screen showed success for every test. Task: I wanted to confirm the balance logic. Action: I queried the wallet_transactions table and saw two refund rows when I double-clicked the submit button, though the UI showed one. I logged it with both query outputs and the steps. Result: developers added an idempotency key, and the team added a database check to our regression checklist.
31

Customer records are being moved from an old system to a new one. How do you test the migration?

Save to ▾
Show answer
Compare record counts per table before and after. Check field mapping, data types, formats, encodings and default values for a sample of records, including edge cases like nulls, special characters and very old records. Verify relationships are kept, such as each order still linked to its customer. Run key business reports in both systems and compare totals. Test the rollback plan and confirm the new application works with migrated data.
32

How do you plan testing for a feature that depends on a third-party service?

Save to ▾
Show answer
Identify the integration points and the service's sandbox, limits and test data. Plan to test with a mock or stub early for our logic and error handling, then against the real sandbox for integration. Include failure scenarios: timeout, slow responses, invalid data and the service being down. Add the dependency to the risk list, with contacts and a fallback plan, and confirm production credentials and monitoring before go-live.
33

How do you write test cases when only wireframes are available and the UI is not ready?

Save to ▾
Show answer
Use the wireframes and the user story as the test basis. Write test scenarios and high-level cases for the flows, field validations, navigation and error states shown in the design. Note open questions, such as missing empty states or error messages, and clarify them with the designer. Keep exact UI text and steps light so they are easy to update. Once the build arrives, refine the cases and add any missing details.
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 is idempotency in APIs and how do you test it?

Save to ▾
Show answer
An operation is idempotent if repeating the same request gives the same result as doing it once. GET, PUT and DELETE should be idempotent; POST usually is not. To test, send the same request several times and check the server state does not change after the first call. For payments, check that retrying with the same idempotency key does not create a second charge, which protects users during network retries.
36

How do you balance manual testing and automation work in the same sprint?

Save to ▾
Show answer
I agree the split with the team at sprint planning. Testing new stories manually comes first because it blocks the sprint goal. I then automate the stable flows from the previous sprint, so scripts are not rewritten while features change. For example, I block two afternoons a week for automation and report progress in stand-up. If a release is at risk, I pause automation and tell the lead openly.
37

Your team says nightly database backups are working. How do you prove that a restore actually works?

Save to ▾
Show answer
Take a backup of a test database with known data, record row counts and a few checksums, then restore it to a separate server. Compare counts, sample records, constraints and users. Measure how long restore takes against the recovery time objective, and check that point-in-time restore loses no more data than the recovery point objective allows. A backup that has never been restored is not proven, so this test should run regularly.
38

User reviews say the app drains the battery. How do you investigate?

Save to ▾
Show answer
Collect details from reviews and support: devices, OS versions and app version when it started. Compare battery usage of the current and previous versions on the same devices over a typical session and while idle in background. Use profiling tools to look for background location, wake locks, frequent sync or network polling. Share measurements with developers, verify the fix with the same method, and add a battery check to release testing.
39

What are the typical JIRA workflows for bugs?

Save to ▾
Show answer
Statuses like To Do, In Progress, In Review, Ready for QA, Done and Reopened, with transitions that depend on the team's configuration.
40

What is the V-model?

Save to ▾
Show answer
A development model where each development phase has a matching testing phase, such as requirements with acceptance tests and design with integration tests.

Tips to crack the MakeMyTrip Software Testing interview

  • Prepare cases on travel funnels, such as drop-offs between search and booking or hotel conversion rates.
  • Practise testing scenarios for booking flows, including fare changes, payments, cancellations and refunds across flights and hotels.
  • Read about MakeMyTrip, Goibibo and redBus to understand its multi-brand travel business.
  • 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; MakeMyTrip interviewers usually ask follow-ups on your first answer.

Frequently asked questions

How many rounds are there in the MakeMyTrip Software Testing interview?

Candidates usually go through 5 stages: Online assessment (coding or SQL); Technical round 1; Technical round 2 or case round; Hiring manager 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 MakeMyTrip Software Testing interview?

This practice set leans on Test Case Design (7), Agile, SQL and API Testing (6), Manual Testing Basics (4), STLC and Test Planning (4). Revise those first, then practise explaining one or two of your own projects end to end, because most MakeMyTrip interviewers ask you to walk through real work.

Are these the exact questions asked at MakeMyTrip?

No. These are curated practice questions that match the skills and difficulty usually tested in e-commerce & consumer tech interviews like MakeMyTrip's. They are not a leaked or verified list of past questions.

Where does MakeMyTrip hire Software Testing professionals in India?

MakeMyTrip has large teams in Gurugram, Bengaluru. Openings and locations change often, so check the MakeMyTrip careers page and filter by city and experience.

Software Testing questions for similar companies