From 02261e1c61572e799b254dd032bed2769ba6fcef Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 15 Dec 2025 12:20:08 +0100 Subject: [PATCH 1/5] Added qa track to program structure json --- .../programStructure.json | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/support/src/documentationHelpers/programStructure.json b/support/src/documentationHelpers/programStructure.json index c391f8b4..29396d76 100644 --- a/support/src/documentationHelpers/programStructure.json +++ b/support/src/documentationHelpers/programStructure.json @@ -121,6 +121,32 @@ "location": "courses/frontend/final-project" } ] + }, + { + "name": "Quality Assurance", + "location": "courses/qa", + "modules": [ + { + "name": "Basics of Testing", + "location": "courses/qa/basics-of-testing" + }, + { + "name": "Test Automation", + "location": "courses/qa/test-automation" + }, + { + "name": "Test Management", + "location": "courses/qa/test-management" + }, + { + "name": "Final Demo Project", + "location": "courses/qa/final-demo-project" + }, + { + "name": "Career Training", + "location": "courses/qa/career-training" + } + ] } ] } From 3800b95dba9c34c1692a6dbca4f581cf7804a4db Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 15 Dec 2025 12:20:38 +0100 Subject: [PATCH 2/5] Expanded regex to match module template header for learning goals --- support/src/documentationHelpers/generateLearningGoals.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/support/src/documentationHelpers/generateLearningGoals.ts b/support/src/documentationHelpers/generateLearningGoals.ts index f45138fb..3e0bb0bc 100644 --- a/support/src/documentationHelpers/generateLearningGoals.ts +++ b/support/src/documentationHelpers/generateLearningGoals.ts @@ -24,7 +24,7 @@ function extractLearningGoals(content: string): { readonly found: boolean; readonly goals: readonly string[]; } { - const sectionRegex = /#+\s*Learning goals\s*\n([\s\S]*?)(?=\n#+\s|$)/i; + const sectionRegex = /#+\s*(?:Module\s+)?Learning goals\s*\n([\s\S]*?)(?=\n#+\s|$)/i; const match = content.match(sectionRegex); if (!match) return { found: false, goals: [] }; From f544210ea5a671572f1a769a71573f92d3db42dc Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 15 Dec 2025 12:21:02 +0100 Subject: [PATCH 3/5] Added todo for final project learning goals --- courses/qa/final-demo-project/README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/courses/qa/final-demo-project/README.md b/courses/qa/final-demo-project/README.md index df310d87..a169ca60 100644 --- a/courses/qa/final-demo-project/README.md +++ b/courses/qa/final-demo-project/README.md @@ -2,6 +2,10 @@ Welcome to your final project! Here you can learn more about the goals and requirements of this final module. +## Module Learning Goals + +- [ ] Todo + ## Key Activities - [ ] Analyze requirements and define testing scope. From 5869b5d73228a73900338e75f9fd3559601033c8 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 15 Dec 2025 12:21:16 +0100 Subject: [PATCH 4/5] updated learning goals for qa track summary --- courses/qa/README.md | 53 +++++++++++++++++++++++--------------------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/courses/qa/README.md b/courses/qa/README.md index dab53772..3c943af0 100644 --- a/courses/qa/README.md +++ b/courses/qa/README.md @@ -16,42 +16,44 @@ Total: 15 weeks ## Learning goals overview - + -### [Basics Of Testing](/courses/qa/basics-of-testing) +### [Basics of Testing](/courses/qa/basics-of-testing) -- [ ] Introduction to QA and Software Development -- [ ] Testing Fundamentals -- [ ] Understand Bug lifecycle and Defect Reporting -- [ ] Understand Test Design Basics -- [ ] Spend a lot of time with hands-on practice -- [ ] Learn to work efficiently with your team members +- [ ] Understand what QA is and why it matters +- [ ] Learn SDLC models (Waterfall vs Agile) and QA’s role in them +- [ ] Explore functional vs non-functional testing and levels of testing +- [ ] Understand defect life cycle, severity vs priority, and how to report bugs +- [ ] Get familiar with JIRA for defect tracking +- [ ] Learn test case design and techniques like Equivalence Partitioning & Boundary Value Analysis +- [ ] Practice writing clear bug reports and effective test cases ### [Test Automation](/courses/qa/test-automation) -- [ ] Web Testing with DevTools -- [ ] Practice using Network tabs, inspect elements, console using Browser DevTools -- [ ] Introduction to Test Automation with playwright -- [ ] Successfully install and configure Playwright -- [ ] Build automation structure and Page Object Model -- [ ] Learn about Accessibility Testing Fundamentals & Playwright -- [ ] Understand the Performance & Modern Tooling (Lighthouse) +- [ ] Understand web application architecture and common testing challenges. +- [ ] Perform cross-browser and responsive design testing. +- [ ] Learn UI automation fundamentals using modern tools (e.g., Selenium or Playwright). +- [ ] Implement advanced automation practices like Page Object Model and CI/CD integration. +- [ ] Conduct accessibility testing using tools like Axe or Lighthouse. +- [ ] Perform basic performance testing and interpret key metrics. +- [ ] Apply best practices for maintaining automated test suites. ### [Test Management](/courses/qa/test-management) -- [ ] Understand about Test Planning, Strategy and defining test scope -- [ ] Know what is Agile Principles, Acceptance Criteria -- [ ] Write detailed manual test cases based on ACs -- [ ] Understand QA metrics for a feature -- [ ] Reporting and communication of QA status -- [ ] Demo Project Preparation +- [ ] Understand the purpose and structure of a Test Plan and Test Strategy. +- [ ] Define scope, objectives, risks, and environments for testing. +- [ ] Apply practical test case management (grouping, linking, status updates). +- [ ] Implement requirement traceability (requirements → test cases → bugs). +- [ ] Understand Agile principles, Scrum roles, artifacts, and ceremonies. +- [ ] Analyze User Stories and Acceptance Criteria to create effective test cases. +- [ ] Track QA progress and communicate status effectively using QA metrics. +- [ ] Prepare for a demo project by planning scope and team responsibilities. ### [Final Demo Project](/courses/qa/final-demo-project) -- [ ] Final Demo Project -- [ ] Key Deliverables - QA Summary Report, Team Presentation +- [ ] Todo ### [Career Training](/courses/qa/career-training) @@ -63,5 +65,6 @@ Total: 15 weeks - [ ] Know how to make your LinkedIn page attractive to recruiters. - [ ] Learn how to perform well in a screening interview. - [ ] How to handle Job Rejection and Job Anxiety -- [ ] Managing your own tasks within a tight deadline -- [ ] Understanding how and when to ask for help at the right time + + + From 5934f6365bd48b76bf75104527c8a9f961025d52 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 15 Dec 2025 12:30:53 +0100 Subject: [PATCH 5/5] Prettier --- support/src/documentationHelpers/generateLearningGoals.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/support/src/documentationHelpers/generateLearningGoals.ts b/support/src/documentationHelpers/generateLearningGoals.ts index 3e0bb0bc..0bfe1ad7 100644 --- a/support/src/documentationHelpers/generateLearningGoals.ts +++ b/support/src/documentationHelpers/generateLearningGoals.ts @@ -24,7 +24,8 @@ function extractLearningGoals(content: string): { readonly found: boolean; readonly goals: readonly string[]; } { - const sectionRegex = /#+\s*(?:Module\s+)?Learning goals\s*\n([\s\S]*?)(?=\n#+\s|$)/i; + const sectionRegex = + /#+\s*(?:Module\s+)?Learning goals\s*\n([\s\S]*?)(?=\n#+\s|$)/i; const match = content.match(sectionRegex); if (!match) return { found: false, goals: [] };