Test Plan - Virtual Human YAML GUI (MVP)
1. Introduction
Purpose / Executive Summary
The purpose of this test plan is to validate that the Virtual Human (VHs) YAML GUI can safely create, configure, deploy, rollback, and teardown multiple Virtual Humans using Kafka for messaging and Kubernetes for deployment, with YAML as the source of truth.
The focus is on test smarter, not more.
2. Scope of Testing
In Scope
-
Creating a VH from a YAML template
-
YAML validation and default handling
-
Kafka topic management per VH using the extended naming convention
-
Kubernetes deployment per VH into namespace
vh-<vhId> -
Running at least two VHs in parallel to prove isolation
-
YAML version history and rollback
-
Teardown: removal of namespace and Kafka topics without leftovers
Out of Scope
- Performance and stress testing beyond basic sanity checks
- Kafka broker internals and Kubernetes platform internals
- Security penetration testing
- Testing non-MVP VH components (face recognition, audio processing)
3. Test Objectives
- Verify that a VH can be deployed end-to-end from YAML
- Ensure Kafka topics and Kubernetes namespaces are created correctly
- Prove multi-instance isolation by running two VHs in parallel
- Validate rollback restores the correct YAML version
- Ensure teardown removes all related resources safely
4. Testing Approach
Methodologies
- Risk-based testing
- Agile / iterative testing
- Automation where valuable, manual where exploratory
Types of Testing
- Unit testing (backend logic)
- Component testing (frontend UI logic)
- Integration testing (Kafka + Kubernetes)
- End-to-End (E2E) testing (full system)
Tools Used
- JUnit (backend unit tests)
- Angular test framework (component tests)
- kubectl, Kafka CLI (integration & verification)
- Manual E2E test scripts
- Optional: TestRail for documentation
5. Test Schedule
| Phase | Start Date | End Date |
|---|---|---|
| Test Planning | 28/12/25 | 30/12/25 |
| Test Case Design | 30/12/25 | 30/12/25 |
| Test Execution | 1/1/26 | 3/01/26 |
| Bug Fix Verification | Continuous | Continuous |
| Test Completion | 1/1/26 | 3/01/26 |
6. Test Environment
Local Development
- Windows 11
- Docker Desktop
- Kubernetes cluster via Docker Desktop
- Kafka via Docker
- Local Spring Boot backend
- Angular dev server
Dev Cluster
- Shared Kubernetes dev cluster
- Company Kafka dev cluster
Test Data
- YAML templates
- Manually created VH IDs
- Mock and controlled Kafka topics
7. Resources & Responsibilities
| Role | Name | Responsibilities |
|---|---|---|
| Developer / Tester | Uraela Mamo | Test plan, test execution, automation, reporting |
| Project Lead | Jeffrey Cornelissen | Review results, validate acceptance |
| Stakeholders | VH team / S6 | Feedback during demos |
8. Risks & Mitigation
| Risk | Mitigation Strategy |
|---|---|
| Kafka or K8s unavailable | Pre-deploy reachability checks and clear error handling |
| Cross-VH interference | Mandatory E2E test with two parallel VHs |
| Teardown deletes wrong resources | Namespace and topic verification after teardown |
| Time constraints | Prioritize critical E2E flows only |
9. Test Deliverables
- This test plan
- Automated unit and component tests
- Integration test scripts
- E2E test checklist and evidence (logs/screenshots)
- Short test summary per environment
10. Entry & Exit Criteria
Entry Criteria
- Code complete for tested features
- Kubernetes context configured
- Kafka reachable
- YAML template available
Exit Criteria
All critical E2E tests pass:
- Deploy VH successfully
- Two VHs run in parallel without interference
- Rollback restores previous version
- Teardown removes namespace and topics
No open critical or blocking defects.