diff --git a/courses/qa/README.md b/courses/qa/README.md index f29b1765..dab53772 100644 --- a/courses/qa/README.md +++ b/courses/qa/README.md @@ -4,11 +4,64 @@ Our QA Tech Track offers a comprehensive 15-week training program designed to eq ## Modules -| Name | Weeks | -| ------------------------------------------------------------ | ----- | -| [Basics Of Testing](/courses/qa/basics-of-testing/README.md) | 5 | -| [Test Automation](/courses/qa/test-automation/README.md) | 5 | -| [Test Management](/courses/qa/test-management/README.md) | 4 | -| [Career Training](/courses/qa/career-training/README.md) | 1 | +| Name | Weeks | +| -------------------------------------------------------------- | ----- | +| [Basics Of Testing](/courses/qa/basics-of-testing/README.md) | 4 | +| [Test Automation](/courses/qa/test-automation/README.md) | 5 | +| [Test Management](/courses/qa/test-management/README.md) | 3 | +| [Final Demo Project](/courses/qa/final-demo-project/README.md) | 2 | +| [Career Training](/courses/qa/career-training/README.md) | 1 | Total: 15 weeks + +## Learning goals overview + + + + + +### [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 + +### [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) + +### [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 + +### [Final Demo Project](/courses/qa/final-demo-project) + +- [ ] Final Demo Project +- [ ] Key Deliverables - QA Summary Report, Team Presentation + +### [Career Training](/courses/qa/career-training) + +- [ ] Understand where to look for suitable jobs and internships. +- [ ] Understand what you should do in order to be an attractive candidate on the Danish - job market. +- [ ] Learn how to identify and communicate your competencies. +- [ ] Understand what HYF can do to support you on your job hunt. +- [ ] Know how to assemble an effective CV. +- [ ] 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 diff --git a/courses/qa/basics-of-testing/README.md b/courses/qa/basics-of-testing/README.md index 50da33de..6c098991 100644 --- a/courses/qa/basics-of-testing/README.md +++ b/courses/qa/basics-of-testing/README.md @@ -1,27 +1,24 @@ -# `Module Name` +# BASICS OF TESTING -This module is about `description goes here` +Here you can find course content and the assignments for the Basics of Testing module. This module basically focus on Establishing the core QA mindset and foundational concepts. ## Contents -| Week | Topic | Preparation | Session Plan | Assignment | -| ---- | ------------------------------------ | ------------------------------------- | ----------------------------------------------------- | ----------------------------------- | -| 1. | [`Session Title`](./week1/README.md) | [Preparation](./week1/preparation.md) | [Session Plan](./week1/session-plan.md) (for mentors) | [Assignment](./week1/assignment.md) | +| Week | Topic | Preparation | Assignment | Session Plan | +| ---- | ------------------------------------------- | ----------------------------------- | --------------------------------- | ------------------------------------- | +| 1. | Introduction to QA and Software Development | [Preparation](week1/preparation.md) | [Assignment](week1/assignment.md) | [Session Plan](week1/session-plan.md) | +| 2. | Testing Fundamentals | [Preparation](week2/preparation.md) | [Assignment](week2/assignment.md) | [Session Plan](week2/session-plan.md) | +| 3. | Bug Life Cycle & Defect Reporting | [Preparation](week3/preparation.md) | [Assignment](week3/assignment.md) | [Session Plan](week3/session-plan.md) | +| 4. | Test Design Basics | [Preparation](week4/preparation.md) | [Assignment](week4/assignment.md) | [Session Plan](week4/session-plan.md) | ## Module Learning Goals -> [!TIP] -> Learning goals should be a list of outcomes, rather than a list of topics. For example, instead of "Synchronous vs Asynchronous", write something like "Explain the difference between sync and async code execution in JavaScript" - By the end of this module, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` - -## Prerequisites - -> [!TIP] -> Some modules build on the learning goals of other modules. If that is the case, link them below. If there are no prerequesites, feel free to remove this section. Note that it is assumed that all foundation modules are a prerequisite of a specialisation course and its modules, so in that case you don't have to write them all out here :-) - -You should have completed or understand the learning goals in the following modules before proceeding: - -- [`Module Name`](https://example.com) +- [ ] 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 diff --git a/courses/qa/basics-of-testing/week1/README.md b/courses/qa/basics-of-testing/week1/README.md index 448996df..d23b5b7d 100644 --- a/courses/qa/basics-of-testing/week1/README.md +++ b/courses/qa/basics-of-testing/week1/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# BASICS OF TESTING, Week 1 -This session is about `description goes here` +In this session, trainees will be introduced to Quality Assurance (QA) and its importance in software development. We will explore the Software Development Life Cycle (SDLC), QA’s role in different models, and essential QA terminology. This week also focuses on building the QA mindset and understanding soft skills required for effective testing. ## Contents @@ -10,9 +10,11 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] What is QA and why it matters? - Importance of QA in delivering high-quality software and preventing defects. +- [ ] SDLC Overview - Waterfall vs Agile models, phases of SDLC, and where QA fits in. +- [ ] QA’s Role in SDLC - Responsibilities of QA at different stages of development. +- [ ] Key QA Terminology - Defect, bug, test case, environment, and other essential terms. +- [ ] Brief Introduction to Agile - Agile principles and how QA adapts in Agile teams. +- [ ] QA Mindset and Soft Skills - Critical thinking, attention to detail, communication, and collaboration. diff --git a/courses/qa/basics-of-testing/week2/README.md b/courses/qa/basics-of-testing/week2/README.md index 448996df..7a70fd29 100644 --- a/courses/qa/basics-of-testing/week2/README.md +++ b/courses/qa/basics-of-testing/week2/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# BASICS OF TESTING, Week 2 -This session is about `description goes here` +In this session, trainees will learn the core principles of software testing and its role in ensuring product quality. We will explore different types of testing, levels of testing, and approaches to executing tests effectively. This week emphasizes understanding functional vs non-functional testing, manual vs automated testing, and how to analyze requirements to define test scenarios. ## Contents @@ -10,9 +10,10 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Functional vs Non-functional Testing – Understand the difference and when to apply each. +- [ ] Levels of Testing – Unit, Integration, System, and Acceptance testing explained. +- [ ] Common Testing Types – Smoke, Sanity, Regression, and Exploratory testing. +- [ ] Manual vs Automated Testing – Pros, cons, and when to choose each approach. +- [ ] Analyze Requirements – Learn how to break down simple requirements and define effective test scenarios. diff --git a/courses/qa/basics-of-testing/week3/README.md b/courses/qa/basics-of-testing/week3/README.md index 448996df..bd38d7f9 100644 --- a/courses/qa/basics-of-testing/week3/README.md +++ b/courses/qa/basics-of-testing/week3/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# BASICS OF TESTING, Week 3 -This session is about `description goes here` +In this session, trainees will learn how defects are managed throughout their life cycle and how to report them effectively. We will cover the difference between a defect and a bug, explore defect statuses, and understand severity vs priority. This week also introduces best practices for writing clear, reproducible bug reports and provides hands-on experience with JIRA. ## Contents @@ -10,9 +10,10 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Defect vs Bug – Understand the terminology and why it matters. +- [ ] Defect Life Cycle – Learn the different statuses and transitions in a defect’s journey. +- [ ] Severity vs Priority – Differentiate between impact and urgency when reporting issues. +- [ ] Writing Effective Bug Reports – Create clear, detailed, and reproducible reports. +- [ ] Introduction to JIRA – Navigate JIRA and practice reporting bugs on a sample web application. diff --git a/courses/qa/basics-of-testing/week4/README.md b/courses/qa/basics-of-testing/week4/README.md index 448996df..344e08b8 100644 --- a/courses/qa/basics-of-testing/week4/README.md +++ b/courses/qa/basics-of-testing/week4/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# BASICS OF TESTING, Week 4 -This session is about `description goes here` +In this session, trainees will learn how to design effective test cases and manage test data. We will cover what a test case is, its structure, and examples of good vs bad test cases. This week also introduces test design techniques such as Equivalence Partitioning and Boundary Value Analysis, which help create efficient and comprehensive test coverage. ## Contents @@ -10,9 +10,11 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] What is a Test Case – Understand its purpose and importance in testing. +- [ ] Test Case Structure – Learn the essential components and see examples. +- [ ] Good vs Bad Test Cases – Identify characteristics of well-written test cases. +- [ ] Test Data Management – Understand how to organize and maintain test data. +- [ ] Test Design Techniques – Apply Equivalence Partitioning and Boundary Value Analysis. +- [ ] Write Test Cases – Practice writing test cases for login and registration functionality. diff --git a/courses/qa/career-training/README.md b/courses/qa/career-training/README.md index 50da33de..bd4fdf25 100644 --- a/courses/qa/career-training/README.md +++ b/courses/qa/career-training/README.md @@ -1,27 +1,22 @@ -# `Module Name` +# Career Training -This module is about `description goes here` +Welcome to your Career Sessions! -## Contents +In this session, trainees will focus on preparing for their next steps after completing the QA program. We will cover HYF HR recommendations for creating an effective CV, explore networking opportunities in the QA and tech industry, and conclude with a certificate ceremony to celebrate achievements. -| Week | Topic | Preparation | Session Plan | Assignment | -| ---- | ------------------------------------ | ------------------------------------- | ----------------------------------------------------- | ----------------------------------- | -| 1. | [`Session Title`](./week1/README.md) | [Preparation](./week1/preparation.md) | [Session Plan](./week1/session-plan.md) (for mentors) | [Assignment](./week1/assignment.md) | +| Week | Topic | Preparation | Session Plan | Assignment | +| ---- | ---------------------------------------------------- | ------------------------------------- | --------------------------------------- | ------------------------ | +| 1. | [Intro to The Danish Job Market](./week1/README.md). | [Preparation](./week1/preparation.md) | [Session Plan](./week1/session-plan.md) | (There is no assignment) | -## Module Learning Goals +## Learning Goals -> [!TIP] -> Learning goals should be a list of outcomes, rather than a list of topics. For example, instead of "Synchronous vs Asynchronous", write something like "Explain the difference between sync and async code execution in JavaScript" +By the end of the three Career Sessions, you should be able to: -By the end of this module, you will be able to: - -- [ ] `[action verb] [specific skill/knowledge]` - -## Prerequisites - -> [!TIP] -> Some modules build on the learning goals of other modules. If that is the case, link them below. If there are no prerequesites, feel free to remove this section. Note that it is assumed that all foundation modules are a prerequisite of a specialisation course and its modules, so in that case you don't have to write them all out here :-) - -You should have completed or understand the learning goals in the following modules before proceeding: - -- [`Module Name`](https://example.com) +- [ ] Understand where to look for suitable jobs and internships. +- [ ] Understand what you should do in order to be an attractive candidate on the Danish - job market. +- [ ] Learn how to identify and communicate your competencies. +- [ ] Understand what HYF can do to support you on your job hunt. +- [ ] Know how to assemble an effective CV. +- [ ] 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 diff --git a/courses/qa/career-training/week1/README.md b/courses/qa/career-training/week1/README.md index 448996df..58cdd53b 100644 --- a/courses/qa/career-training/week1/README.md +++ b/courses/qa/career-training/week1/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# CAREER SESSION, Week 1 -This session is about `description goes here` +In this session, trainees will focus on preparing for their next steps after completing the QA program. We will cover HYF HR recommendations for creating an effective CV, explore networking opportunities in the QA and tech industry, and conclude with a certificate ceremony to celebrate achievements. ## Contents @@ -10,9 +10,15 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Apply HYF HR recommendations to create a strong QA-focused CV. +- [ ] Research and identify networking possibilities within the tech industry. +- [ ] Understand strategies for building professional connections. +- [ ] Participate in the graduation and certificate ceremony. + +## Hands-on Activity + +- [ ] Update your CV based on HYF HR guidelines. +- [ ] Create a list of at least 5 networking opportunities (events, platforms, communities). +- [ ] Share your updated CV with mentors for feedback. diff --git a/courses/qa/final-demo-project/README.md b/courses/qa/final-demo-project/README.md new file mode 100644 index 00000000..df310d87 --- /dev/null +++ b/courses/qa/final-demo-project/README.md @@ -0,0 +1,20 @@ +# FINAL DEMO PROJECT + +Welcome to your final project! Here you can learn more about the goals and requirements of this final module. + +## Key Activities + +- [ ] Analyze requirements and define testing scope. +- [ ] Create and execute detailed manual test cases. +- [ ] Report defects in JIRA. +- [ ] Automate UI tests using Playwright with POM structure. +- [ ] Run Accessibility checks using Axe-core and Lighthouse performance audits. +- [ ] Collect QA metrics and prepare a summary report. + +## Deliverables + +✅ Test Plan & Detailed Test Cases +✅ Bug Reports in JIRA +✅ Playwright Automation Suite (including accessibility checks) +✅ Lighthouse/Performance Snapshot +✅ QA Summary Report & Team Presentation diff --git a/courses/qa/test-automation/README.md b/courses/qa/test-automation/README.md index 50da33de..350bc9a8 100644 --- a/courses/qa/test-automation/README.md +++ b/courses/qa/test-automation/README.md @@ -1,27 +1,25 @@ -# `Module Name` +# TEST AUTOMATION -This module is about `description goes here` +Here you can find course content and the assignments for the Test automation module. This module basically focus on web app testing, modern UI automation, and new automation focuses (Accessibility & Performance). ## Contents -| Week | Topic | Preparation | Session Plan | Assignment | -| ---- | ------------------------------------ | ------------------------------------- | ----------------------------------------------------- | ----------------------------------- | -| 1. | [`Session Title`](./week1/README.md) | [Preparation](./week1/preparation.md) | [Session Plan](./week1/session-plan.md) (for mentors) | [Assignment](./week1/assignment.md) | +| Week | Topic | Preparation | Assignment | Session Plan | +| ---- | ------------------------------------------------------------ | ----------------------------------- | --------------------------------- | ------------------------------------- | +| 1. | Web Testing with DevTools | [Preparation](week1/preparation.md) | [Assignment](week1/assignment.md) | [Session Plan](week1/session-plan.md) | +| 2. | Introduction to Test Automation with Playwright (TypeScript) | [Preparation](week2/preparation.md) | [Assignment](week2/assignment.md) | [Session Plan](week2/session-plan.md) | +| 3. | Building Automation Structure & Page Object Model (POM) | [Preparation](week3/preparation.md) | [Assignment](week3/assignment.md) | [Session Plan](week3/session-plan.md) | +| 4. | Accessibility Testing Fundamentals & Playwright | [Preparation](week4/preparation.md) | [Assignment](week4/assignment.md) | [Session Plan](week4/session-plan.md) | +| 4. | Accessibility Testing Fundamentals & Playwright | [Preparation](week5/preparation.md) | [Assignment](week5/assignment.md) | [Session Plan](week5/session-plan.md) | ## Module Learning Goals -> [!TIP] -> Learning goals should be a list of outcomes, rather than a list of topics. For example, instead of "Synchronous vs Asynchronous", write something like "Explain the difference between sync and async code execution in JavaScript" - By the end of this module, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` - -## Prerequisites - -> [!TIP] -> Some modules build on the learning goals of other modules. If that is the case, link them below. If there are no prerequesites, feel free to remove this section. Note that it is assumed that all foundation modules are a prerequisite of a specialisation course and its modules, so in that case you don't have to write them all out here :-) - -You should have completed or understand the learning goals in the following modules before proceeding: - -- [`Module Name`](https://example.com) +- [ ] 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. diff --git a/courses/qa/test-automation/week1/README.md b/courses/qa/test-automation/week1/README.md index 448996df..e4f3dcb5 100644 --- a/courses/qa/test-automation/week1/README.md +++ b/courses/qa/test-automation/week1/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# TEST AUTOMATION, Week 1 -This session is about `description goes here` +In this session, trainees will learn the fundamentals of web testing using browser developer tools. We will cover client–server architecture, the structure of web pages (DOM, HTML, CSS, and basic JavaScript), and how to use DevTools effectively for testing. This week focuses on identifying common front-end issues and analyzing network requests. ## Contents @@ -10,9 +10,13 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Understand client–server architecture and how web apps communicate. +- [ ] Explore web elements: DOM, HTML, CSS, and JavaScript basics. +- [ ] Use Browser DevTools for testing: + - [ ] Elements tab for inspecting and modifying DOM/CSS. + - [ ] Console tab for debugging JavaScript errors. + - [ ] Network tab for analyzing requests and responses. +- [ ] Identify common front-end issues QA can detect. +- [ ] Practice inspecting elements and debugging console/network issues on a sample site. diff --git a/courses/qa/test-automation/week2/README.md b/courses/qa/test-automation/week2/README.md index 448996df..a7a71b1c 100644 --- a/courses/qa/test-automation/week2/README.md +++ b/courses/qa/test-automation/week2/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# TEST AUTOMATION, Week 2 -This session is about `description goes here` +In this session, trainees will learn the fundamentals of UI test automation using Playwright with TypeScript. We will cover why automation is important, how to set up the Playwright and Node.js environment, and basic TypeScript concepts for testers. This week focuses on writing and running your first Playwright test, understanding selectors and assertions, and executing tests in headed and headless modes. ## Contents @@ -10,9 +10,12 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Understand why test automation is essential in modern QA. +- [ ] Set up Playwright and Node.js environment for automation. +- [ ] Learn basic TypeScript concepts relevant for testers. +- [ ] Write and run your first Playwright test. +- [ ] Understand selectors and assertions in Playwright. +- [ ] Execute tests in headed and headless modes. +- [ ] Automate a simple login flow using Playwright. diff --git a/courses/qa/test-automation/week3/README.md b/courses/qa/test-automation/week3/README.md index 448996df..2eff80a6 100644 --- a/courses/qa/test-automation/week3/README.md +++ b/courses/qa/test-automation/week3/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# TEST AUTOMATION, Week 3 -This session is about `description goes here` +In this session, trainees will learn how to organize test automation projects for scalability and maintainability. We will cover test suite structure, reusing locators and actions, and introduce the Page Object Model (POM) design pattern. This week also focuses on creating Page Object classes in Playwright, understanding the benefits of modular test design, and an introduction to test reporting. ## Contents @@ -10,9 +10,12 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Organize test suites for better structure and maintainability. +- [ ] Reuse locators and actions across multiple tests. +- [ ] Understand the Page Object Model (POM) and its advantages. +- [ ] Create Page Object classes in Playwright. +- [ ] Apply modular design principles for scalable automation. +- [ ] Get an introduction to test reporting tools and practices. +- [ ] Refactor previous Playwright tests into a POM-based structure. diff --git a/courses/qa/test-automation/week4/README.md b/courses/qa/test-automation/week4/README.md index 448996df..fe25d572 100644 --- a/courses/qa/test-automation/week4/README.md +++ b/courses/qa/test-automation/week4/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# TEST AUTOMATION, Week 4 -This session is about `description goes here` +In this session, trainees will learn the importance of web accessibility and how to test it both manually and through automation. We will cover WCAG standards, perform basic manual accessibility checks (keyboard navigation and screen reader basics), and automate accessibility testing using Playwright with Axe-core. This week also focuses on analyzing and reporting accessibility defects effectively. ## Contents @@ -10,9 +10,10 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Understand what Web Accessibility is and why it matters (WCAG principles). +- [ ] Perform manual accessibility checks: Keyboard navigation, Screen reader basics. +- [ ] Automate accessibility checks using Playwright and Axe-core. +- [ ] Analyze accessibility violations and report defects clearly. +- [ ] Use Playwright to run basic accessibility checks on a sample site and identify violations. diff --git a/courses/qa/test-automation/week5/README.md b/courses/qa/test-automation/week5/README.md new file mode 100644 index 00000000..9ee63cea --- /dev/null +++ b/courses/qa/test-automation/week5/README.md @@ -0,0 +1,22 @@ +# TEST AUTOMATION, Week 5 + +In this session, trainees will learn the fundamentals of front-end performance testing and how modern tools like Google Lighthouse help QA teams ensure quality. We will cover key performance metrics, run Lighthouse audits, interpret reports, and explore automation options using Lighthouse CLI or Node module. + +## Contents + +- [Preparation](./preparation.md) +- [Session Plan](./session-plan.md) (for mentors) +- [Assignment](./assignment.md) + +## Session Learning Goals + +By the end of this session, you will be able to: + +- [ ] Understand key front-end performance metrics: + - [ ] First Contentful Paint (FCP) + - [ ] Largest Contentful Paint (LCP) + - [ ] Total Blocking Time (TBT) +- [ ] Learn what Google Lighthouse is and why it matters for QA. +- [ ] Run and interpret Lighthouse reports for: Performance, SEO & Best Practices +- [ ] Automate Lighthouse audits using CLI or Node.js module. +- [ ] Analyze and report performance and accessibility scores from Lighthouse reports. diff --git a/courses/qa/test-management/week4/assignment.md b/courses/qa/test-automation/week5/assignment.md similarity index 100% rename from courses/qa/test-management/week4/assignment.md rename to courses/qa/test-automation/week5/assignment.md diff --git a/courses/qa/test-management/week4/preparation.md b/courses/qa/test-automation/week5/preparation.md similarity index 100% rename from courses/qa/test-management/week4/preparation.md rename to courses/qa/test-automation/week5/preparation.md diff --git a/courses/qa/test-management/week4/session-materials/example-session-material.md b/courses/qa/test-automation/week5/session-materials/example-session-material.md similarity index 100% rename from courses/qa/test-management/week4/session-materials/example-session-material.md rename to courses/qa/test-automation/week5/session-materials/example-session-material.md diff --git a/courses/qa/test-management/week4/session-plan.md b/courses/qa/test-automation/week5/session-plan.md similarity index 100% rename from courses/qa/test-management/week4/session-plan.md rename to courses/qa/test-automation/week5/session-plan.md diff --git a/courses/qa/test-management/README.md b/courses/qa/test-management/README.md index 50da33de..b111311d 100644 --- a/courses/qa/test-management/README.md +++ b/courses/qa/test-management/README.md @@ -1,27 +1,24 @@ -# `Module Name` +# TEST MANAGEMENT -This module is about `description goes here` +Here you can find course content and assignments for the Practical Test Planning, Agile & Project Management module. This module focuses on applying QA skills in an Agile environment, emphasizing effective planning, documentation, and communication for regular QA work. ## Contents -| Week | Topic | Preparation | Session Plan | Assignment | -| ---- | ------------------------------------ | ------------------------------------- | ----------------------------------------------------- | ----------------------------------- | -| 1. | [`Session Title`](./week1/README.md) | [Preparation](./week1/preparation.md) | [Session Plan](./week1/session-plan.md) (for mentors) | [Assignment](./week1/assignment.md) | +| Week | Topic | Preparation | Assignment | Session Plan | +| ---- | ----------------------------------------- | ----------------------------------- | --------------------------------- | ------------------------------------- | +| 1. | Test Planning, Strategy & Scope | [Preparation](week1/preparation.md) | [Assignment](week1/assignment.md) | [Session Plan](week1/session-plan.md) | +| 2. | Agile Testing & Working with User Stories | [Preparation](week2/preparation.md) | [Assignment](week2/assignment.md) | [Session Plan](week2/session-plan.md) | +| 3. | QA Metrics, Reporting & Demo Project Prep | [Preparation](week3/preparation.md) | [Assignment](week3/assignment.md) | [Session Plan](week3/session-plan.md) | ## Module Learning Goals -> [!TIP] -> Learning goals should be a list of outcomes, rather than a list of topics. For example, instead of "Synchronous vs Asynchronous", write something like "Explain the difference between sync and async code execution in JavaScript" - By the end of this module, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` - -## Prerequisites - -> [!TIP] -> Some modules build on the learning goals of other modules. If that is the case, link them below. If there are no prerequesites, feel free to remove this section. Note that it is assumed that all foundation modules are a prerequisite of a specialisation course and its modules, so in that case you don't have to write them all out here :-) - -You should have completed or understand the learning goals in the following modules before proceeding: - -- [`Module Name`](https://example.com) +- [ ] 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. diff --git a/courses/qa/test-management/week1/README.md b/courses/qa/test-management/week1/README.md index 448996df..850539e8 100644 --- a/courses/qa/test-management/week1/README.md +++ b/courses/qa/test-management/week1/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# TEST MANAGEMENT, Week 1 -This session is about `description goes here` +In this session, trainees will learn how to create effective test plans and strategies for real-world projects. We will cover the purpose of a Test Plan and Test Strategy, key sections such as scope, objectives, risks, and test environments, and practical test case management techniques. This week also introduces requirement traceability to ensure complete coverage from requirements to test cases and defects. ## Contents @@ -10,9 +10,10 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Understand the purpose and importance of a Test Plan and Test Strategy. +- [ ] Identify key sections of a Test Plan: scope, objectives, risks, and environments. +- [ ] Apply practical test case management techniques (grouping, linking, status updates). +- [ ] Implement requirement traceability (requirements → test cases → bugs). +- [ ] Draft a practical Test Plan for a new feature and define the testing scope. diff --git a/courses/qa/test-management/week2/README.md b/courses/qa/test-management/week2/README.md index 448996df..213c20d5 100644 --- a/courses/qa/test-management/week2/README.md +++ b/courses/qa/test-management/week2/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# TEST MANAGEMENT, Week 2 -This session is about `description goes here` +In this session, trainees will learn how QA integrates into Agile development processes. We will cover Agile principles, Scrum roles, artifacts, and ceremonies, and explore QA’s responsibilities during sprint planning and estimation. This week emphasizes analyzing User Stories and Acceptance Criteria (AC) to create effective test cases and maintaining continuous testing and feedback throughout the sprint. ## Contents @@ -10,9 +10,11 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Understand Agile principles and Scrum framework (roles, artifacts, ceremonies). +- [ ] Identify QA’s role in Agile teams, including sprint planning and estimation. +- [ ] Analyze User Stories and Acceptance Criteria to derive test scenarios. +- [ ] Create detailed manual test cases based on ACs. +- [ ] Track test case status during a simulated sprint. +- [ ] Apply continuous testing and feedback practices in Agile workflows. diff --git a/courses/qa/test-management/week3/README.md b/courses/qa/test-management/week3/README.md index 448996df..ad83f408 100644 --- a/courses/qa/test-management/week3/README.md +++ b/courses/qa/test-management/week3/README.md @@ -1,6 +1,6 @@ -# `Session Name` (Week `X`) +# TEST MANAGEMENT, Week 3 -This session is about `description goes here` +In this session, trainees will learn how to measure QA effectiveness using key metrics and communicate testing progress clearly to stakeholders. We will cover common QA metrics for a feature, reporting best practices, and review all manual and automation topics covered so far. This week also includes planning for the final demo project, defining scope, and organizing teams. ## Contents @@ -10,9 +10,19 @@ This session is about `description goes here` ## Session Learning Goals -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - By the end of this session, you will be able to: -- [ ] `[action verb] [specific skill/knowledge]` +- [ ] Understand common QA metrics: + - [ ] Test coverage + - [ ] Pass/fail rate + - [ ] Defect density +- [ ] Create clear QA status reports and communicate progress effectively. +- [ ] Review manual and automation concepts from previous modules. +- [ ] Define demo project scope and team responsibilities. +- [ ] Prepare a QA metrics sheet and reporting template for real-world use. +- [ ] Plan and set up teams for the final project. + +## Hands-on Activity + +- [ ] Create a QA status report and metrics sheet for a past week’s testing. +- [ ] Collaborate with peers to plan demo project scope and team setup. diff --git a/courses/qa/test-management/week4/README.md b/courses/qa/test-management/week4/README.md deleted file mode 100644 index 448996df..00000000 --- a/courses/qa/test-management/week4/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# `Session Name` (Week `X`) - -This session is about `description goes here` - -## Contents - -- [Preparation](./preparation.md) -- [Session Plan](./session-plan.md) (for mentors) -- [Assignment](./assignment.md) - -## Session Learning Goals - -> [!TIP] -> Learning goals specific to this session. These should be a subset of the module's learning goals, and expanded on in more detail if possible. - -By the end of this session, you will be able to: - -- [ ] `[action verb] [specific skill/knowledge]` diff --git a/package-lock.json b/package-lock.json index 1528a118..17275fc7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5 +1,5 @@ { - "name": "HackYourFutureCPH", + "name": "program", "lockfileVersion": 3, "requires": true, "packages": { @@ -187,7 +187,6 @@ "integrity": "sha512-t54CUOsFMappY1Jbzb7fetWeO0n6K0k/4+/ZpkS+3Joz8I4VcvY9OiEBFRYISqaI2fq5sCiPtAjRDOzVYG8m+Q==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@octokit/auth-token": "^6.0.0", "@octokit/graphql": "^9.0.2",