0% found this document useful (0 votes)
24 views

Lab and Homeworks

During Year 1, Ashkar Company ordered a machine on January 1 at an invoice price of $21,000. On the date of delivery, January 2, the company paid $6,000 on the machine, with the balance on credit at 10 percent interest due in six months. On January 3, it paid $1,000 for freight on the machine. On January 5, Ashkar paid installation costs relating to the machine amounting to $2,500. On July 1, the company paid

Uploaded by

Dũng Minh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views

Lab and Homeworks

During Year 1, Ashkar Company ordered a machine on January 1 at an invoice price of $21,000. On the date of delivery, January 2, the company paid $6,000 on the machine, with the balance on credit at 10 percent interest due in six months. On January 3, it paid $1,000 for freight on the machine. On January 5, Ashkar paid installation costs relating to the machine amounting to $2,500. On July 1, the company paid

Uploaded by

Dũng Minh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

COMP2030 – Assignment 03

Thai Minh Dung


2024-11-15

Problem 1: Project Overview


This project, commissioned by Dr. Le Duy Dung, a professor at VinUniversity,
aims to develop a real-time visualization system for indoor air quality data. The
system will monitor critical parameters such as PM2.5 concentration,
temperature, and humidity, integrating Computational Fluid Dynamics (CFD)
simulations to model airflow within indoor environments like classrooms and
hospital rooms. Users will be able to upload 3D models from Lidar sensors to the
dashboard, with each 3D model displaying air quality statistics from associated
air sensors. The goal is to equip decision-makers with tools to monitor and
control air quality in real-time, enhancing environmental conditions for
occupants.

Problem 2: Team testing responsibility division


Group Members:
• Ha Minh Dung (V202200791)
• Nguyen Dai Nghia (V202200779)
• Tran Hung Dat (V202200889)
• Thai Minh Dung (V202200665)
Testing Responsibility Assignment: Each member will test their respective work
areas:
• Ha Minh Dung: Sensor Data API, 3D Model Upload, and Display
• Thai Minh Dung: Database Management
• Tran Hung Dat & Nguyen Dai Nghia: Frontend Management (Data Display,
Dashboard Design)

Problem 3: Individual testing plan


3.1 Testing objectives
• Validate the functionality of storing air quality data in the Firebase real-time
database
• Ensure the data fetched from the API is accurately stored in the database
• Verify the Firebase login and logout functionality
• Confirm the security and access control mechanisms for the database

3.2 Testing methods


3.2.a Unit test:
• Verify API response data is properly parsed and formatted before storing in the
database
• Test error handling when API response is unsuccessful
• Validate data types and structure of data stored in the database
• Test basic CRUD (Create, Read, Update, Delete) operations on the database

3.2.b Integration test:


• Validate the integration between the API data fetching and database storage
• Test data consistency when multiple clients access and update the database
concurrently
• Verify the real-time updates are reflected across all connected clients

3.2.c Functional test:


• Verify user can successfully log in and logout of the application
• Verify user can upload 3D models from Lidar sensors

3.2.d Non functional test:


• Measure database read/write latency under varying load conditions
• Test database resilience and recovery in case of network failures or service
outages
• Validate the security rules and authentication mechanisms

3.2.e Acceptance test:


• Engage end-users to validate the application meets their requirements and
expectations
• Ensure the air quality data presentation and user experience are satisfactory

3.2.f Testing tool:


• Firebase Emulator Suite for local testing and debugging
• Jest and Cypress for unit, integration, and end-to-end testing automation
• Firebase Crashlytics for crash reporting and analysis
• Firebase Performance Monitoring for tracking application performance

3.2.g Testing Schedule:


• Week 9-10: Execute remaining functional tests for authentication and air
quality data management
• Week 11-12: Conduct system and acceptance tests to validate end-to-end
scenarios
• Week 13-14: Perform non-functional testing for performance, security, and
reliability
• Week 14-15: Address any bugs or issues discovered, and ensure the application
meets quality standards

3.2.h Test cases:

3.2.h.i User Authentication:


Test Case ID: TC-001
Description: Verify user can successfully sign up for the application
Preconditions:
• User has not registered for the application
• User has access to the sign-up page
Test Steps:
1. Navigate to the sign-up page
2. Enter a valid email address
3. Enter a secure password
4. Click the sign-up button
5. Expected Results:
• User is successfully registered and redirected to the login page
• User receives a confirmation email
• User’s account is created in the Firebase Authentication
Test Case ID: TC-002 Description: Verify user can successfully log in to the
application
Preconditions:
• User has a registered account
• User has access to the login page
Test Steps:
1. Navigate to the login page
2. Enter a registered email address
3. Enter the correct password
4. Click the login button
Expected Results:
• User is successfully authenticated and redirected to the dashboard
• User’s login session is maintained

3.2.h.ii Air Quality Data Management


Test Case ID: TC-003
Description: Verify air quality data is fetched from the API and stored in the
Firebase Realtime Database
Preconditions:
• User is logged in to the application
• API endpoint for fetching air quality data is accessible
Test Steps:
1. User initiates the air quality data fetch
2. Application sends a request to the air quality API
3. API responds with the air quality data
4. Application parses and formats the data
5. Application writes the data to the Firebase Realtime Database
Expected Results:
• API request is successful with a 200 status code
• Data fetched from the API is correctly formatted and structured
• Data is successfully written to the Firebase Realtime Database
• Data is accessible and readable from the database

3.2.h.iii Non-Functional Test Cases:


1. Performance Testing Test Case ID: TC-005 Description: Verify the application
can handle a high volume of concurrent users without degradation
Preconditions:
• Application is deployed and accessible
• Test environment is set up to simulate concurrent user load
Test Steps:
1. Use a load testing tool (e.g., Artillery, JMeter) to generate concurrent user
requests
2. Gradually increase the number of concurrent users over time
3. Monitor the application’s response times, throughput, and resource
utilization
Expected Results:
• Application maintains acceptable response times (< 500ms) under high load
• Application can handle the expected peak user concurrency without
degradation
• No significant increases in CPU, memory, or network utilization
2. Security Testing Test Case ID: TC-006 Description: Verify the application’s
authentication and authorization mechanisms Preconditions:
• Application is deployed and accessible
• Test user accounts with different roles are available
Test Steps:
1. Attempt to access restricted pages/data without authentication
2. Attempt to access restricted pages/data with an unauthorized user account
3. Attempt common web application attacks (e.g., SQL injection, cross-site
scripting)
Expected Results:
• Unauthenticated users are redirected to the login page
• Unauthorized users are denied access to restricted pages/data
• Application is not vulnerable to common web application attacks
3. Reliability Testing Test Case ID: TC-007 Description: Verify the application’s
resilience to network failures and service outages Preconditions:
• Application is deployed and accessible
• Test environment allows for simulating network failures and service outages
Test Steps:
1. Simulate network disconnections and reconnections
2. Simulate Firebase Realtime Database service outages
3. Monitor the application’s behavior and data consistency
Expected Results:
• Application gracefully handles network disconnections and reconnections
• User data is not lost or corrupted during service outages
• Application can recover and resume normal operations after service
restoration
1

You might also like