Project Test Plan - CankayaUniversity/ceng-407-408-2024-2025-EmoTagger-A-Community-driven-Emotion-Annotation-Tool GitHub Wiki

PROJECT TEST PLAN

TABLE OF CONTENTS

  1. Introduction
  2. Features to be Tested
  3. Features Not to be Tested
  4. Item Pass/Fail Criteria
  5. References
  6. Test Design Specifications
  7. Detailed Test Cases

1. INTRODUCTION

1.1 Version Control

Version Description of Changes Date
1.0 First Version March 2025

1.2 Overview

This document defines the test plan for the EmoTagger web application. The project is a crowdsourced emotion tagging platform that allows users to listen to music and tag the emotions they experience. It includes a gamified interface, community engagement features, and an analytics dashboard for data tracking.

1.3 Scope

This test plan includes the testing scope, test strategy, design specifications, pass/fail criteria, detailed test cases, and schedule for GUI, admin panel, user interaction forms, and feedback system.

1.4 Terminology

Acronym Definition
GUI Graphical User Interface
ADM Admin Dashboard
FORM Form Validation

2. FEATURES TO BE TESTED

  • Graphical User Interface (GUI)
  • Emotion Annotation Module
  • Gamification System
  • Admin Dashboard
  • Form Validation
  • Music Player Controls
  • Navigation Bar
  • Point-Based Leaderboard
  • Admin Panel Navigation
  • CSV export functionality

3. FEATURES NOT TO BE TESTED

  • External API for music recommendation (handled by third-party)
  • Payment or donation-related systems
  • Badge system
  • Multi-Language Support

4. ITEM PASS/FAIL CRITERIA

A test case is considered passed if the actual output matches the expected output under the given test conditions. It is failed if any mismatch, error, or unexpected behavior is observed.

4.1 Exit Criteria

  • 100% of the test cases are executed
  • 95% of the test cases passed
  • All high and medium priority test cases passed

5. REFERENCES

  • EmoTagger_SRS_V1.0 – February 2025
  • EmoTagger_SDD_V1.0 – February 2025

6. TEST DESIGN SPECIFICATIONS

6.1 Gamification System

6.1.1 Subfeatures

  • Earn Points for Tagging (GAM.POINTS)
  • Display Leaderboard (GAM.LBD)

6.1.2 Test Cases

TC ID Requirement Priority Scenario Description
GAM.POINTS.01 Tag Counting High User tags 1 song, verify point increment
GAM.LBD.01 Leaderboard Display Medium Leaderboard shows user’s rank after tagging

6.2 Form Validation

6.2.1 Subfeatures

  • Registration Form (FORM.REG)
  • Login Form (FORM.LOGIN)
  • Empty and Invalid Fields (FORM.INVALID)

6.2.2 Test Cases

TC ID Requirement Priority Scenario Description
FORM.REG.01 Required Fields High Submit form with empty fields, errors displayed
FORM.REG.02 Email Format Medium Enter invalid email, system rejects input
FORM.LOGIN.01 Wrong Credentials High Login with wrong password, error shown
FORM.INVALID.01 Prevent Double Submit Medium Double-click submit sends only one request

6.3 Graphical User Interface (GUI)

6.3.1 Subfeatures

  • Start Tagging (GUI.STRT_BTN)
  • Submit Emotion (GUI.SUB_BTN)
  • View Profile (GUI.PROF_BTN)
  • Music Player Controls (GUI.MUSIC_BTN)
  • Navigation Bar (GUI.NAV)

6.3.2 Test Cases

TC ID Requirement Priority Scenario Description Status
GUI.STRT_BTN.01 Start Tagging Page High Open homepage, click "Start Tagging" button Pass
GUI.SUB_BTN.01 Submit Emotion Tag High Select emotion and click submit while listening Pass
GUI.MUSIC_BTN.01 Music Playback High Play, pause, skip, and return music controls Pass
GUI.NAV.01 Navigation Function High Click each nav bar item and verify redirection Pass

6.4 Admin Panel

6.4.1 Subfeatures

  • User Management (ADM.USR)
  • View Statistics (ADM.STATS)
  • Review Tag Logs (ADM.REV_TAGS)

6.4.2 Test Cases

TC ID Requirement Priority Scenario Description Status
ADM.USR.01 Deactivate Account High Admin disables user and test login fails Pass
ADM.STATS.01 View Tagging Stats High Access analytics and confirm data chart Pass
ADM.REV_TAGS.01 Review Tag Logs Medium Admin filters and views historical tags Pass

6.5 General Features

6.5.1 Subfeatures

  • Point System (GEN.POINTS.01)
  • Leaderboard Display (GEN.LEADERBOARD.01)

6.5.2 Test Cases

TC ID Requirement Priority Scenario Description Status
GEN.POINTS.01 Tagging, Point Rule High Tag a music and verify points increase Pass
GEN.LEADERBOARD.01 Leaderboard View Medium Check if users are ranked based on points Pass

7. DETAILED TEST CASES

7.1 ADM.USR.01

Field Description
Test ID ADM.USR.01
Purpose Validate that the admin can deactivate a user account
Requirements Admin User Management
Priority High
Estimated Time 3 minutes
Setup Admin is logged in, test user is active
Procedure Navigate to User Management β†’ Select user β†’ Click 'Deactivate' β†’ Try login
Expected Result Login fails, user is marked as inactive
Cleanup Reactivate user if needed

7.2 GUI.MUSIC_BTN.01

Field Description
Test ID GUI.MUSIC_BTN.01
Purpose Verify music player buttons work correctly
Requirements Music Playback
Priority High
Estimated Time 3 minutes
Procedure Play β†’ Pause β†’ Next β†’ Previous
Expected Result Music controls respond accordingly
Cleanup None

7.3 GAM.LBD.01

Field Description
Test ID GAM.LBD.01
Purpose Ensure leaderboard updates based on user activity
Requirements Gamification - Leaderboard
Priority Medium
Estimated Time 3 minutes
Procedure User A tags more than User B β†’ View leaderboard
Expected Result User A is ranked higher than User B
Cleanup None

7.4 GUI.STRT_BTN.01

Field Description
Test ID GUI.STRT_BTN.01
Purpose Verify that the tagging interface appears when 'Start Tagging' is clicked
Priority High
Estimated Time 2 minutes
Setup User is logged in and on the homepage
Procedure Click 'Start Tagging' β†’ Verify tagging panel appears
Expected Result Emotion tagging panel appears successfully
Cleanup Return to homepage

7.5 FORM.REG.01

Field Description
Test ID FORM.REG.01
Purpose Validate that empty registration form returns proper errors
Priority High
Estimated Time 2 minutes
Procedure Leave all fields blank β†’ Click 'Register'
Expected Result Error messages are displayed
Cleanup Refresh form

7.6 ADM.EXPORT.01 (Not Implemented – Optional)

Field Description
Test ID ADM.EXPORT.01
Purpose Verify admin can export data to CSV
Priority High
Estimated Time 3 minutes
Procedure Admin Dashboard β†’ Click 'Export CSV'
Expected Result File download is triggered
Cleanup Delete test file if needed

7.7 GEN.POINTS.01

Field Description
Test ID GEN.POINTS.01
Purpose Verify user earns points when tagging music
Priority High
Estimated Time 2 minutes
Procedure Tag a song β†’ Check profile or database
Expected Result Points increased
Cleanup Reset points if needed

7.8 GEN.LEADERBOARD.01

Field Description
Test ID GEN.LEADERBOARD.01
Purpose Confirm leaderboard ranks users correctly
Priority Medium
Estimated Time 3 minutes
Procedure Users tag varying amounts β†’ View leaderboard
Expected Result Higher tag count = higher rank
Cleanup None

7.9 ADM.PANEL.01

Field Description
Test ID ADM.PANEL.01
Purpose Ensure admin can access all panel sections
Priority High
Estimated Time 2 minutes
Procedure Log in as admin β†’ Navigate through Dashboard, Users, Musics
Expected Result All views accessible with no errors
Cleanup Logout

TEST RESULTS

TC ID Feature/Subfeature Priority Description Result
GAM.POINTS.01 Tag Counting High User tags 1 song, verify point increment Pass
GAM.LBD.01 Leaderboard Display Medium Leaderboard shows user’s rank after tagging Pass
FORM.REG.01 Required Fields High Submit registration form with empty fields, error messages appear Pass
FORM.REG.02 Email Format Check Medium Enter invalid email, system rejects input Pass
FORM.LOGIN.01 Wrong Credentials High Try to login with wrong password, system displays error Pass
FORM.INVALID.01 Prevent Double Submit Medium Rapid double-click on submit only sends one request Pass
GUI.STRT_BTN.01 Start Tagging Page High Open homepage, click 'Start Tagging' button Pass
GUI.SUB_BTN.01 Submit Emotion Tag High Select emotion and click submit while listening Pass
GUI.MUSIC_BTN.01 Music Playback High Play, pause, skip, and return music controls Pass
GUI.NAV.01 Navigation Function High Click each nav bar item and verify redirection Pass
ADM.USR.01 Deactivate Account High Admin disables user and test login fails Pass
ADM.STATS.01 View Tagging Stats High Access analytics and confirm data chart Pass
ADM.REV_TAGS.01 Review Tag Logs Medium Admin filters and views historical tags Pass
GEN.POINTS.01 Point System High Tag a music and verify points increase Pass
GEN.LEADERBOARD.01 Leaderboard View Medium Check if users are ranked based on points Pass
ADM.PANEL.01 Admin Navigation High Admin can access Dashboard, Users, Musics Pass