Curated interview practice questions with answers. These are practice scenarios, not a verified list of past interview questions.
About CGI hiring for Software Testing roles
CGI is a Canadian IT and business consulting services company providing systems integration, managed services, and software solutions. Its India global delivery centres support clients in government, banking, utilities and manufacturing. It hires in India for software engineers, test engineers, data analysts and support engineers.
For Software Testing roles, this CGI practice set focuses most on Automation Basics for Manual Testers (6), Manual Testing Basics (5), Testing Types (5), Mobile Testing (5). It has 13 easy, 26 medium, 1 hard questions, so you can start easy and work up to the harder ones.
Company type
IT services
Headquarters
Montreal, Canada
Main India offices
Bengaluru, Hyderabad, Chennai, Mumbai
CGI Software Testing interview process
Online assessment (aptitude + technical)
Technical interview
Managerial round
HR round
Typical pattern based on public candidate experiences. Rounds vary by role, team and year.
Solved for CGIStart 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
When is manual testing a better choice than automation?
Manual testing is better for exploratory testing, usability and look-and-feel checks, features that change often, one-time tests and early testing of new functionality. Automation pays off for stable, repetitive tests such as regression suites, data-driven checks and smoke tests run on every build. Most teams combine both: manual for discovery and judgement, automation for speed and repeatability.
02
SQL: find orders that have an order date in the future.
-- Orders cannot be placed in the future
SELECT id, order_date, status
FROM orders
WHERE order_date > CURRENT_TIMESTAMP;
-- Expected result: no rows. If rows appear, check time zone handling and input validation.
A fixed sleep, such as waiting five seconds, is either too long, which makes the suite slow when the page loads in one second, or too short, which makes the test fail when the server is slow. Both waste time and cause flaky results. Instead, wait for a real condition: an element to appear, a network response to finish or a loading spinner to disappear. Modern tools do much of this automatically.
04
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');
});
05
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.
06
What is the role of a manual tester in a software team?
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.
07
What is the difference between an emulator, a simulator and a real device?
An emulator imitates both the hardware and software of a device, as with the Android emulator, so it behaves close to a real phone. A simulator imitates only the software environment, as with the iOS simulator, and does not reproduce the hardware. Both are free and fast for early testing. Real devices are needed for camera, battery, sensors, actual performance, network behaviour and final sign-off.
08
How do you test location-based features in a mobile app?
Test with location permission allowed, denied and approximate only. Use mock location tools to simulate different cities and moving routes. Verify the app shows nearby results correctly, updates location while moving and handles GPS turned off. Check accuracy indoors and with weak GPS, battery impact of continuous tracking and that background location is used only if needed and explained to the user.
SDLC is the full software development life cycle; STLC is the testing life cycle: requirement analysis, test planning, test design, environment setup, execution and closure.
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.
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.
It means that finding and fixing many defects does not guarantee success if the system itself does not meet user needs. A bug-free product built on wrong or misunderstood requirements is still a failure. For example, a perfectly working report that shows the wrong business metric is useless to the client. This is why testers validate against real user expectations, not just the written specification.
14
What is the difference between a defect and a production incident?
A defect is a flaw in the software that makes it behave differently from the requirement, whether found in testing or production. A production incident is an event that disrupts or degrades service for users, such as an outage or a failed payment flow. An incident may be caused by a defect, but also by infrastructure, configuration or third-party failures. Incidents are handled by an incident process first, then linked to defects for the fix.
15
How do you test concurrent updates to the same record, such as two agents editing one ticket?
Open the same record in two sessions, change different fields and save both, then change the same field and save both. Check the database to see which value won and whether data was silently lost. A good design uses optimistic locking, where the second save fails with a 'record changed, please reload' message because a version column changed. Also repeat with API calls fired together to catch timing issues the UI hides.
Mobile users have many screen sizes, resolutions, notches and foldable screens, and they rotate their phones. Rotation can recreate the screen and lose entered data if not handled. Test portrait and landscape on key screens, small and large phones and tablets, and check text does not cut off, buttons stay reachable and the keyboard does not hide input fields. Check entered form data survives rotation.
Create your own data with a clear prefix or tag, such as emails starting with qa_ravi_, or IDs in a reserved range. Insert data through the app or API where possible so it follows real rules, and keep SQL setup scripts in version control. After testing, delete only your tagged rows, or run inside a transaction and roll back. Never edit shared master data without telling the team.
20
How do you test app permissions such as camera, location and contacts?
Check that the app asks for permission only when the feature is used, with a clear reason. Test allow, deny, and deny with do not ask again. When denied, the app must not crash and should explain how to enable it in settings. Revoke permission from settings while the app is in background and return. Test allow only once or only while using the app options on newer OS versions.
21
What is the difference between a story, epic, task and bug in JIRA?
Heuristic evaluation is an expert review where a few evaluators inspect the interface against known usability principles, such as Nielsen's ten heuristics, and list problems with severity. It is fast and cheap and needs no participants. A usability test watches real users perform tasks and shows where they actually struggle. Heuristic reviews find many obvious issues early, but they can miss problems that only real users with real goals reveal.
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.
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.
25
Describe how you contributed in a sprint retrospective to improve quality.
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.
26
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.
Data mapping testing checks that each field on a screen, file or API goes to the correct table and column with the correct format. For example, the Date of Birth field on the signup form must land in users.dob as a date, and the State dropdown must store the state code, not the label. Testers use a mapping document, enter known values in the UI or API and query the database to compare field by field.
29
How do you convert existing manual test cases into automated scripts?
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.
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.
31
How do you test an application when requirements change frequently?
Treat it as a high-severity security defect, because storing full card numbers in logs breaks payment card security rules and creates a data leak risk. Do not copy the card numbers into the bug; use masked examples and the log location instead. Log the bug with restricted visibility and inform your lead and the security contact right away. After the fix, verify new logs are masked and confirm old logs are cleaned.
35
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
/* CSS selector using the test id */
button[data-testid='login-btn']
// XPath using the test id
//button[@data-testid='login-btn']
// XPath using the visible text
//button[normalize-space()='Login']
39
Why must input validation be tested on the server and not only in the browser?
Client-side validation improves user experience by giving quick feedback, but anyone can bypass it by disabling JavaScript or sending requests directly with tools like Postman. The server must validate every input again for type, length, format and business rules. Testers check this by sending invalid data straight to the API, such as a negative quantity or a very long name, and confirming the server rejects it.
A technique that tests all pairs of input values instead of every combination, greatly reducing test cases while catching most defects.
Tips to crack the CGI Software Testing interview
Revise core programming, SQL and testing basics, as CGI roles often involve maintaining and testing enterprise systems.
Learn about CGI's member-ownership model, where employees are called members and can buy shares.
Prepare clear examples of teamwork and client communication, which are important in CGI's consulting culture.
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; CGI interviewers usually ask follow-ups on your first answer.
Frequently asked questions
How many rounds are there in the CGI Software Testing interview?
Candidates usually go through 4 stages: Online assessment (aptitude + technical); Technical 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 CGI Software Testing interview?
This practice set leans on Automation Basics for Manual Testers (6), Manual Testing Basics (5), Testing Types (5), Mobile Testing (5). Revise those first, then practise explaining one or two of your own projects end to end, because most CGI interviewers ask you to walk through real work.
Are these the exact questions asked at CGI?
No. These are curated practice questions that match the skills and difficulty usually tested in it services interviews like CGI's. They are not a leaked or verified list of past questions.
Where does CGI hire Software Testing professionals in India?
CGI has large teams in Bengaluru, Hyderabad, Chennai, Mumbai. Openings and locations change often, so check the CGI careers page and filter by city and experience.