Back to the full dot-point answer

NSWSoftware EngineeringQuick questions

Module 4: Software Engineering Project

Quick questions on Testing strategies explained: HSC Software Engineering Module 4

11short Q&A pairs drawn directly from our worked dot-point answer. For full context and worked exam questions, read the parent dot-point page.

What is the test pyramid?
Show answer
The conventional model: many cheap tests at the base, fewer expensive tests at the top.
What is unit testing?
Show answer
Test one function or class in isolation. Dependencies (database, network, file system) are replaced with mocks or stubs.
What is integration testing?
Show answer
Test how components work together, including real or test-instance external services (database, message queue).
What is system (end-to-end) testing?
Show answer
Test the whole application from outside, typically through the UI or public API, against a deployed environment.
What is user acceptance testing (UAT)?
Show answer
The product is exercised by real users (or business stakeholders standing in for them) against acceptance criteria from the original brief. Driven by humans, not automation.
What is test-driven development (TDD)?
Show answer
Write the test first, watch it fail, write the code to make it pass, then refactor. Cycle:
What is continuous testing?
Show answer
Tests run on every commit in CI. Failed tests block merging. This is what makes continuous integration work.
What is skipping the test pyramid balance?
Show answer
Heavy on E2E with few unit tests is slow, flakey and frustrating. Heavy on unit with no integration misses real bugs.
What is manual testing as the only strategy?
Show answer
Manual testing does not scale. Automate everything that can be automated; reserve manual effort for UAT and exploratory testing.
What is confusing UAT with QA testing?
Show answer
UAT is the business validating the product. QA testing is the technical validation throughout development. Both exist.
What is treating tests as optional?
Show answer
Untested code is broken code. Production failures from untested paths are the most common HSC project pitfall. :::

All Software EngineeringQ&A pages