Day 51-55: Capstone Project – Manual + Automation Testing Of A Web App (4.3.1)
Students

Academic Programs

AI-powered learning for grades 8-12, aligned with major curricula

Professional

Professional Courses

Industry-relevant training in Business, Technology, and Design

Games

Interactive Games

Fun games to boost memory, math, typing, and English skills

Day 51-55: Capstone Project – Manual + Automation Testing of a Web App

Day 51-55: Capstone Project – Manual + Automation Testing of a Web App

Practice

Interactive Audio Lesson

Listen to a student-teacher conversation explaining the topic in a relatable way.

Introduction to the Capstone Project

🔒 Unlock Audio Lesson

Sign up and enroll to listen to this audio lesson

0:00
--:--
Teacher
Teacher Instructor

Welcome everyone! Over the next few days, we will dive into an important part of your training: the capstone project. Can anyone tell me why hands-on projects are critical in learning QA?

Student 1
Student 1

I think it helps us apply what we've learned in real-world scenarios.

Teacher
Teacher Instructor

Exactly! Applying concepts solidifies your understanding. For this project, you will work on a web app, where you'll write test plans, execute manual test cases, and automate some tests. Are you all ready?

Student 2
Student 2

What kind of web application will we be testing?

Teacher
Teacher Instructor

Great question! We'll be testing an e-commerce web application with various features. Now, let's talk about creating your test plan. What should a comprehensive test plan include?

Student 3
Student 3

It should have the scope, objectives, and resources needed.

Teacher
Teacher Instructor

Correct! Planning is crucial for successful testing. A well-defined scope helps in focusing the testing effort on the most critical areas. Let's get started on drafting that test plan!

Writing Manual Test Cases

🔒 Unlock Audio Lesson

Sign up and enroll to listen to this audio lesson

0:00
--:--
Teacher
Teacher Instructor

Now that we have a test plan, let’s move on to writing manual test cases. What elements do you think should be included in a test case?

Student 4
Student 4

It should include an ID, description, steps, and expected results.

Teacher
Teacher Instructor

Very good! Each manual test case will directly correlate with the functionalities you outlined in your test plan. Remember, clarity is key. Can anyone give me an example of a manual test case?

Student 1
Student 1

What about verifying login with valid credentials?

Teacher
Teacher Instructor

Absolutely! That’s a critical feature. In your cases, make sure to cover both positive and negative scenarios. Also, ensure they are clear and concise so anyone can execute them without confusion.

Student 2
Student 2

What if we find defects during our tests?

Teacher
Teacher Instructor

Good point! Any defect must be logged appropriately in JIRA. This keeps track of issues for prioritization and resolution.

Automating Test Cases with Selenium

🔒 Unlock Audio Lesson

Sign up and enroll to listen to this audio lesson

0:00
--:--
Teacher
Teacher Instructor

Next, we’ll automate some of your test cases. Who can remind us what Selenium is used for?

Student 3
Student 3

Selenium is used for automating web browsers.

Teacher
Teacher Instructor

Exactly! And we will use the Page Object Model, or POM, to structure our automation code effectively. Can someone explain why POM is beneficial?

Student 4
Student 4

It separates the page-specific operations from the test scripts, making the code more maintainable.

Teacher
Teacher Instructor

Right again! This separation enhances readability and makes it easier to manage your tests. Now, let’s start writing a basic automation script for one of your manual test cases.

Logging Defects and Reporting

🔒 Unlock Audio Lesson

Sign up and enroll to listen to this audio lesson

0:00
--:--
Teacher
Teacher Instructor

As you conduct your tests, logging defects will be key. What are the main components we need to include in a defect report?

Student 2
Student 2

We need a summary, steps to reproduce, actual and expected results.

Teacher
Teacher Instructor

Great! The more detailed your report, the easier it is for developers to understand what went wrong. Can everyone make sure to keep track of defects in JIRA as they test?

Student 1
Student 1

What about the final report?

Teacher
Teacher Instructor

Excellent question! The final test report summarizes your findings and helps stakeholders understand the quality of the application. Ensure it's well-organized and highlights major issues.

Presentation of Findings

🔒 Unlock Audio Lesson

Sign up and enroll to listen to this audio lesson

0:00
--:--
Teacher
Teacher Instructor

As we wrap up the project, everyone will present their findings. What key points should you include in your presentation?

Student 4
Student 4

We should summarize the test plan, the test cases we wrote, and any defects we found.

Teacher
Teacher Instructor

Exactly! Also, include lessons learned and recommendations for future testing phases. Engaging your audience will help convey the significance of your work!

Student 3
Student 3

This experience has helped me understand the testing process better.

Teacher
Teacher Instructor

That’s great to hear! Remember, applying your knowledge through projects is invaluable in solidifying those concepts. Let's prepare for the presentations!

Introduction & Overview

Read summaries of the section's main ideas at different levels of detail.

Quick Overview

The capstone project facilitates hands-on practice in manual and automation testing of a web application.

Standard

During this capstone project spanning five days, students engage in comprehensive manual and automated testing of a web application, necessitating the creation of test plans, execution of test cases, and logging of defects. The project solidifies their knowledge by integrating both testing methodologies in real-world scenarios.

Detailed

Detailed Summary

The capstone project, which spans Days 51 to 55, serves as a culmination of the QA training, where students apply both manual and automated testing techniques on a web application. This section emphasizes the importance of real-world application by requiring students to develop a comprehensive test plan that guides their testing strategy.

Key Activities:

  1. Writing a Test Plan: Students draft a test plan to outline the testing scope, objectives, resources, and timeline required for the project. This plan establishes a clear framework within which they will operate.
  2. Creating Manual Test Cases: Ten manual test cases are composed to cover various functionalities of the web app, ensuring thorough examination of features.
  3. Automating Test Cases: Students are tasked with automating three selected test cases using Selenium and the Page Object Model (POM). This allows them to grasp how automation can improve efficiency and accuracy in testing.
  4. Logging Defects: Throughout the testing process, any identified defects need to be logged into JIRA. This activity emphasizes the real-time documentation of issues for better management and resolution.
  5. Generating a Test Report: At the project's conclusion, students compile their findings and present a test report, providing an overview of the testing process, discovered defects, and the overall functionality of the web application.

The session aims to deepen students' understanding of both manual and automated testing in a collaborative and applied context, reinforcing their capabilities as Quality Assurance professionals.

Audio Book

Dive deep into the subject with an immersive audiobook experience.

Overview of the Capstone Project

Chapter 1 of 4

🔒 Unlock Audio Chapter

Sign up and enroll to access the full audio experience

0:00
--:--

Chapter Content

Students perform manual and automated testing for a web app, documenting test cases, defects, and automation scripts.

Detailed Explanation

In the capstone project, students will engage in both manual and automated testing to evaluate a web application. They will create various test cases, which are specific conditions or inputs used to determine if the application behaves as expected. Additionally, they will identify and document defects, which are flaws that prevent the application from functioning correctly. Students will also write automation scripts to streamline the testing process, utilizing tools such as Selenium for automating interactions with the web app.

Examples & Analogies

Imagine a team preparing for a big event, such as a wedding. They have to check everything manually—like making sure the venue looks perfect, the music is at the right volume, and seating arrangements are correct. However, to save time, they also use a checklist to automate some tasks, like confirming that flowers have arrived or that the cake is on schedule. In this project, students follow a similar approach by testing a web app both by checking every detail manually and using automation tools to ensure swift and accurate results.

Creating a Test Plan

Chapter 2 of 4

🔒 Unlock Audio Chapter

Sign up and enroll to access the full audio experience

0:00
--:--

Chapter Content

Exercise: Write a test plan and ten manual test cases.

Detailed Explanation

Creating a test plan involves outlining the scope, objectives, resources, and schedule for testing the web application. It serves as a roadmap for the testing process. Students will also need to develop ten manual test cases, which include defining specific scenarios that the application must pass. Each test case typically outlines the conditions under which the test will be performed, the steps to execute it, and the expected result.

Examples & Analogies

Think of a test plan like a vacation itinerary. Just as you would list where you are going, what activities you plan to do, and when, a test plan specifies what features will be tested, the order of testing, and what resources (like time and testers) are needed. Similarly, having a well-structured itinerary helps ensure all activities are covered during the trip, just as a test plan ensures all necessary aspects of the web application are thoroughly checked.

Automating Test Cases

Chapter 3 of 4

🔒 Unlock Audio Chapter

Sign up and enroll to access the full audio experience

0:00
--:--

Chapter Content

Exercise: Automate three test cases using Selenium and POM.

Detailed Explanation

Students will use Selenium, an automation testing tool, to write scripts that automate three of their test cases. The Page Object Model (POM) will be employed to structure the automation code efficiently, allowing for better maintainability and readability. POM organizes code by creating separate classes for different components (like login forms), which facilitates code reuse when writing tests.

Examples & Analogies

Imagine you are an architect designing a house. Instead of drawing out the entire layout from scratch every time, you create a standard blueprint for each type of room (like the kitchen or bedroom). This allows you to easily replicate those designs in future houses. Similarly, in the capstone project, using POM allows students to create templates for their web app’s components, making it quicker to write new tests and ensuring consistency across all scripts.

Logging Defects

Chapter 4 of 4

🔒 Unlock Audio Chapter

Sign up and enroll to access the full audio experience

0:00
--:--

Chapter Content

Exercise: Log defects in JIRA and generate a test report.

Detailed Explanation

After testing, students will record any defects uncovered during their testing process in JIRA, a popular tool for tracking issues and managing projects. This includes providing detailed descriptions of the defects, the steps necessary to reproduce them, and their severity levels. Additionally, a test report will be generated to summarize the testing process, results, and any issues encountered.

Examples & Analogies

Think of defects like issues in a sports team. A coach needs to note when a player is not performing well, detailing the specific mistakes and their impact on the overall game. Similarly, logging defects allows QA testers to communicate what went wrong in the application effectively, so developers can address these issues and improve the overall performance, much like a coach working with players to enhance their skills and strategy.

Key Concepts

  • Test Plan: A structured outline for testing activities that ensures all aspects of the application are covered.

  • Manual Test Case: A detailed guide to verify application functionality that is performed by a tester.

  • Automation Testing: The application of automated tools to test software and improve testing efficiency.

  • Selenium: A widely used testing tool for automating web applications.

  • Page Object Model (POM): A design pattern aimed at improving test code organization and making it easier to manage and maintain.

  • Defect Logging: The systematic recording of bugs found during testing for tracking and resolution.

  • Test Report: A summary document that presents the results of the testing phase including findings and suggestions.

Examples & Applications

For a login feature, create a manual test case with steps detailing how to verify successful login using valid credentials.

When automating a checkout process, implement POM to create a structured interaction with the checkout page.

Memory Aids

Interactive tools to help you remember key concepts

🎵

Rhymes

Learn the plan, so you'll test grand. Write your cases, understand their paces.

📖

Stories

Imagine a QA who entered a web store, each feature checked, ensuring a score. With a plan in hand and tests well staged, defects logged, their work engaged.

🧠

Memory Tools

To remember the components of a test case: ID, Description, Steps, Expectation. Use 'I Don't See Everything' (ID, D, S, E).

🎯

Acronyms

Remember POM as 'Page Object Management' - it helps manage your test with ease.

Flash Cards

Glossary

Test Plan

A document outlining the scope, objectives, resources, and timeline for a testing effort.

Manual Test Case

A step-by-step guide to verify a specific feature or requirement of a software application.

Automation Testing

The use of software tools to execute tests automatically, rather than manually.

Selenium

An open-source framework used for automating web applications for testing purposes.

Page Object Model (POM)

A design pattern that enhances test maintenance and reduces code duplication by modeling a webpage as an object in code.

Defect Logging

The process of recording bugs or issues found during testing in a defect tracking system like JIRA.

Test Report

A document summarizing the outcomes of testing, including passed and failed tests and defects found.

Reference links

Supplementary resources to enhance your learning experience.