Curated interview practice questions with answers. These are practice scenarios, not a verified list of past interview questions.
About Virtusa hiring for Software Testing roles
Virtusa is a digital engineering and IT services company providing application development, testing, cloud and data services. It has a strong client base in banking, financial services, healthcare and telecom. Its India centres in Hyderabad, Chennai and Bengaluru hire for software engineers, test engineers and data professionals.
For Software Testing roles, this Virtusa practice set focuses most on Testing Types (9), Test Case Design (7), Manual Testing Basics (5), Performance and Security Basics (4). It has 16 easy, 24 medium questions, so you can start easy and work up to the harder ones.
Company type
IT services
Headquarters
Southborough, Massachusetts, USA
Main India offices
Hyderabad, Chennai, Bengaluru
Virtusa Software Testing interview process
Online assessment (aptitude + reasoning)
Coding test
Technical interview
HR round
Typical pattern based on public candidate experiences. Rounds vary by role, team and year.
Solved for VirtusaStart 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
A page loads slowly only for some users. How do you investigate as a manual tester?
Collect details from affected users: location, device, browser, network and time. Try to reproduce with similar conditions using browser network throttling. Use the browser developer tools network tab to find slow requests, large files or failing calls, and compare with a fast user. Check whether those users have more data, like a long order history. Share the slow request, timing and conditions in the bug for the developers.
In sprint planning, review each story's acceptance criteria and estimate test effort, including test data and regression. Write test cases in the first days while development starts. Ask for early builds so testing is spread across the sprint, not crowded at the end. Keep time for regression and bug retesting in the last two or three days. Track progress on the board and raise risks in stand-up.
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.
04
What are the main testing differences between Android and iOS?
Android has many manufacturers, screen sizes and OS versions with custom skins, so device fragmentation and background-kill behaviour need more coverage. iOS has fewer devices but strict permission, privacy and store review rules. Navigation differs: Android has a system back button or gesture, iOS relies on in-app navigation and swipe back. Notification, permission and file-access behaviours also differ, so test cases need platform-specific steps.
05
What should a tester verify about HTTPS on a website?
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.
06
What is the difference between quality assurance and quality control?
Quality assurance is process-oriented and preventive: it sets standards, reviews and checklists so defects are not introduced in the first place. Quality control is product-oriented and detective: it checks the actual build through testing and inspection to find defects. For example, introducing a requirement review checklist is QA, while executing test cases on a release build is QC. Software testing is one activity inside quality control.
07
How do you run a moderated usability test session?
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.
08
What is integration testing and what are its approaches?
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.
Both are temporary pieces of code used in integration testing when some modules are not ready. A stub replaces a called lower-level module and returns fixed responses, used in top-down testing; for example, a stub payment service that always returns success. A driver replaces a calling higher-level module and sends inputs to the module under test, used in bottom-up testing. In API testing, mock servers play the role of stubs.
10
What is the difference between ad hoc testing and monkey testing?
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.
11
What are ACID properties and how can a tester check them?
ACID means Atomicity, Consistency, Isolation and Durability. Atomicity: a transfer that debits one account must also credit the other, or neither happens; test by forcing a failure midway. Consistency: constraints still hold after the transaction. Isolation: two users updating together do not see each other's half-done work; test with two sessions. Durability: committed data survives a restart; test by committing, restarting the service and querying again.
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.
13
How do you chain requests in Postman by passing a token from login to the next call?
// Tests tab of the Login request
const body = pm.response.json();
pm.environment.set('authToken', body.token);
// Next request header:
// Authorization: Bearer {{authToken}}
// Postman replaces {{authToken}} with the saved value
Try passwords that break each rule: too short, no digit, no special character and common passwords, and check clear messages. Verify the password is masked and not shown in the URL or logs. Enter the wrong password up to the limit and confirm the account locks for the defined time or until reset. Check that the error message does not reveal whether the username exists and that the lockout counter resets after a successful login.
16
Write a Postman test script that checks the status is 201 and the response contains an id.
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');
});
17
What is the difference between statement coverage and branch coverage?
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.
18
The test environment is down for two days just before release. What do you do?
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.
XSS is a vulnerability where an attacker's script is injected into a page and runs in other users' browsers, which can steal session data or change the page. It occurs when user input is shown without proper encoding. Testers enter a harmless script tag or an image tag with an onerror alert in comments, profile names and search boxes, then check if it executes when the page is displayed. Output encoding prevents it.
Evaluating software to find defects and confirm it meets requirements. It reduces risk, protects users and saves the cost of fixing bugs after release.
Normalization organises tables to reduce duplicate data, for example storing the customer address once in a customers table instead of repeating it in every order. Testers should understand it because it explains where data lives and which joins are needed to verify a screen. It also shows risk: in a denormalized report table, the same value is copied in many places, so updates must be tested to confirm every copy changes.
25
How do you make test cases reusable and easy to maintain?
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.
26
Write a basic Selenium test in Python that opens a page and checks its title.
Trigger the email from each event, such as signup or order placed, and verify it arrives at the right address within the expected time. Check subject, sender name, personalised fields, amounts and links. Click every link and confirm it opens the right page. Check the layout on desktop and mobile mail apps, the unsubscribe option where required, and that no email is sent for failed or cancelled actions. Use a test mailbox tool in QA.
Compliance testing checks that software meets external laws, standards or internal policies, not just functional requirements. Examples include payment security standards for card data, data protection rules for personal data, accessibility guidelines and RBI rules for banking apps. Testers verify items such as consent capture, data retention, audit logs and masking. Findings are usually documented as evidence for auditors, so traceability and clear records matter as much as the tests.
The pesticide paradox says that if you run the same tests again and again, they stop finding new defects, just as pests become resistant to the same pesticide. To counter it, regularly review and update test cases, add new scenarios from recent production bugs, vary test data, and mix scripted runs with exploratory sessions. Rotating testers across modules also brings fresh eyes and new ideas.
31
How do you test battery and memory usage of a mobile app?
Run typical user sessions on a real device and measure battery drain, CPU and memory with platform profiling tools or the device's battery statistics. Compare with the previous version. Look for background work continuing after the app is closed, GPS left on, frequent network polling and memory that keeps growing, which signals a leak. Test on low-RAM devices too, where the OS kills heavy apps quickly.
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.
Smoke testing checks that the critical features of a new build work (broad and shallow). Sanity testing checks that a specific fix or area works after a change (narrow and deep).
35
What is the difference between a build and a release?
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.
A test condition is an item or event of the system that can be verified by one or more test cases, derived from the test basis. For example, for a login requirement, conditions include valid login, wrong password, locked account and remember me. Test conditions answer what to test, while test cases describe how to test it with steps, data and expected results. Listing conditions first helps check coverage before writing detailed cases.
37
Tell me about a time you used a test design technique to reduce the number of test cases.
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.
38
Write a Gherkin scenario for applying a valid coupon at checkout.
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
Three Amigos is a short meeting where a business person or product owner, a developer and a tester discuss a story before development. The business explains the need, the developer considers how to build it and the tester asks what could go wrong and how it will be verified. The output is clear acceptance criteria and example scenarios. It prevents misunderstandings and reduces bugs found late.
Tips to crack the Virtusa Software Testing interview
Revise banking and healthcare domain basics, which are important industries in Virtusa's client portfolio.
Practise coding questions and SQL queries for both the online test and technical interview.
Learn about its engineering-first positioning and be ready to describe how you approach learning new tools.
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; Virtusa interviewers usually ask follow-ups on your first answer.
Frequently asked questions
How many rounds are there in the Virtusa Software Testing interview?
Candidates usually go through 4 stages: Online assessment (aptitude + reasoning); Coding test; Technical interview; 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 Virtusa Software Testing interview?
This practice set leans on Testing Types (9), Test Case Design (7), Manual Testing Basics (5), Performance and Security Basics (4). Revise those first, then practise explaining one or two of your own projects end to end, because most Virtusa interviewers ask you to walk through real work.
Are these the exact questions asked at Virtusa?
No. These are curated practice questions that match the skills and difficulty usually tested in it services interviews like Virtusa's. They are not a leaked or verified list of past questions.
Where does Virtusa hire Software Testing professionals in India?
Virtusa has large teams in Hyderabad, Chennai, Bengaluru. Openings and locations change often, so check the Virtusa careers page and filter by city and experience.