<!-- Generated from applied-computing-au vic/unit3-4/sat/C08-2026/C08-Reference-Godot by port-reference-godot-to-wiki.py — do not hand-edit; re-run the port. --> # Software Testing Hierarchy *Where your C8 work sits in the testing world — and why it's called **alpha** testing.* ## The hierarchy ``` 1. Development Phase Tests (early, internal) ├── Unit Testing (α) └── Integration Testing (α) 2. Pre-Release Tests (later, internal/external) ├── System Testing (α/β) └── User Acceptance Testing (UAT) (β) 3. Post-Release Tests (after launch) ├── Regression Testing ├── Performance Testing └── Security Testing ``` | Test | What it checks | |---|---| | **Unit** | one component in isolation — a single function returns the right value | | **Integration** | components working together — the "Add Student" form updates the database *and* the timetable | | **System** | the entire product end to end, against all requirements | | **UAT** | real users doing real tasks — is it usable, does it meet their needs? | | **Regression** | after a fix or update, do the old features still work? | | **Performance** | speed, scalability, stability under load | | **Security** | vulnerabilities — can data be accessed that shouldn't be? | ## Alpha vs beta - **Alpha (α)** — *internal*: the developers (or company insiders) test, in a controlled environment. **Your C8 work is alpha testing** — you test your own SAT against your own testing table. - **Beta (β)** — *external*: real users test in their real environment. **That's Criterion 9** — beta testing with your actual users comes next. It's not about location — it's about **who** is testing and **how**. ## Check Your Understanding Alpha or beta? 1. A dev team spends a week testing its own new timetable app with fake student data. 2. A games company invites 1,000 players worldwide to play an early build for two weeks. 3. Company staff and their families use a new app feature for a month before public release. 4. Fifty teachers use a quiz platform with their real classes for a semester and report back. 5. A bank hires an external professional testing company (not real customers) to systematically test its new app. *(tricky)* >| ### Answer >| 1. **Alpha** — internal team, controlled environment (system testing). >| 2. **Beta** — real external users in their own environments (UAT). >| 3. **Alpha** — still inside the company, before release. >| 4. **Beta** — the real target users, in real classrooms. >| 5. **Alpha** — professional testers are not real users; it's controlled, systematic testing.
