Skip to content

Instantly share code, notes, and snippets.

@Kishimoto96
Last active May 30, 2023 16:04
Show Gist options
  • Save Kishimoto96/39bf7400e96a364989dd826df469f1d5 to your computer and use it in GitHub Desktop.
Save Kishimoto96/39bf7400e96a364989dd826df469f1d5 to your computer and use it in GitHub Desktop.
gadget.md

Product Selection:

Each student should select a product for testing. It can be any physical or digital product of their choice. Examples include mobile apps, websites, electronic gadgets, household appliances, or even a toy. Choose something that interests you and that you have access to for conducting tests effectively.

Test Objectives:

Define the objectives of your testing. Consider what aspects of the product you want to evaluate and what specific functionalities you want to test. Think about potential scenarios and edge cases that could arise during the product's usage.

Test Planning:

Before writing tests, create a test plan. Outline the different types of tests you will conduct, such as functional, usability, performance, security, or compatibility tests. Define the testing environment and tools you will need to execute your tests effectively.

Test Scenarios:

Identify a range of test scenarios to cover various aspects of the product. Consider both normal and abnormal situations that a user might encounter. Focus on edge cases, which are inputs or conditions that are outside the typical range and might cause unexpected behavior.

Test Cases:

Write individual test cases for each scenario identified in the previous step. A test case should include the following components:Test case name/identifier Description of the scenario being tested Preconditions (if any) Steps to reproduce the scenario

Expected results

Actual results (to be filled in after conducting the test) Edge Case Testing: Pay special attention to edge cases, as they often reveal unexpected issues. Identify specific edge cases for your selected product and design test cases to evaluate how the product handles such situations. Examples include testing extreme inputs, boundary values, or uncommon usage scenarios.

@abdulrahmanalbakkar
Copy link

Abdulrahman Albakkar, Houzifa Habbo, Adib Naser, M. NOUR KRIMESH

---Mouse Testing---

Test Objectives:

To evaluate the functional performance of the mouse.
To assess the mouse's compatibility with various operating systems.
To evaluate the usability and ergonomics of the mouse.
To test the durability of the mouse buttons.
Test Planning:

Types of Tests:
Functional testing: To check the basic operations of the mouse like clicking, scrolling, and movement accuracy.
Compatibility testing: To evaluate the mouse's compatibility with different operating systems (Windows, macOS, Linux).
Usability testing: To test the design and ergonomics of the mouse.
Durability testing: To evaluate the durability of the mouse buttons and scroll wheel.
Test Scenarios:

Clicking: Testing the left click, right click, and middle click (if present) functionality.
Scrolling: Testing the scroll wheel in both up and down directions.
Movement: Testing the movement accuracy of the cursor.
Compatibility: Testing the mouse with different operating systems.
Durability: Testing the durability of mouse buttons and scroll wheel.
Test Cases:

Clicking:
Test Case Name: Verify Left Click Functionality
Steps: Move the cursor over an icon and left click.
Expected Result: The icon should get selected.

Scrolling:
Test Case Name: Verify Scroll Functionality
Steps: Open a webpage or document and scroll up and down using the mouse scroll wheel.
Expected Result: The webpage or document should move up and down.

Movement:
Test Case Name: Verify Cursor Movement Accuracy
Steps: Move the mouse in different directions.
Expected Result: The cursor on the screen should accurately follow the mouse movements.

Compatibility:
Test Case Name: Verify Compatibility with Windows
Steps: Connect the mouse to a Windows device and test all functions.
Expected Result: The mouse should work seamlessly with the Windows device.
Durability:

Test Case Name: Verify Button Durability
Steps: Continuously click the mouse buttons for an extended period of time.
Expected Result: The buttons should continue to function properly without showing signs of damage.

@MOHAMMAD-ALMOHAMMAD
Copy link

Team Members: @MOHAMMAD-ALMOHAMMAD, SAID BARADAI, JOUD KHANJI
-----------START----------

Product Being Tested: Youtube.com


Test Objectives: Make sure the sign with google functionality works properly


Test Plan: a functional test that checks the functional requirement of sigining in with google will be applied


Test Scenarios:
-User doesnt have a Google account
-User enters a wrong password
-User enters their google account information and succesfully signs in


Test Cases:

1-Test case 1:
Description: User doesnt have a Google account
Precondtions: None
Steps:
- User enters an email but a response with message "Account not found" is received

2- Test case 2:

        Description: User enters a wrong password
        Precondtion: User must of have already entered an email that belongs to a google account
        Steps:
           - User enters a password
           - User is then met with a "wrong password" message
           - User is asked to enter a password again
           -User only proceeds if they enter a correct password
           
     3- Test case 3:

        Description: User enters their google account information and succesfully signs in
        Precondtion: User must of have already entered an email that belongs to a google account, User must have of already entered a correct password
        Steps:
           -User enters a correct email
           - User enters a correct password
           - User is then redirected to the main page of youtube
           - 

Expected Results:

 - When user enters a valid email, they are asked to enter their password,
  -Edge Cases:
       1- if a user enters a number instead of a string, an error will displayed
       2- if  a user enters a string that has an invalid email format, an error will be displayed
       
  
  -When a user enters a correct password, they are signed in and then redirected to the home page
  -Edge Cases:
        1- if a user enters a string that is 8 characters or less
        2- if a user enters a wrong password, and has already tried multiple times, they should be asked to sign in using another method

-------------- END------------

@motaz99
Copy link

motaz99 commented May 30, 2023

Asli Sema, Atakan Serbes, Tesnim Nakilci and Motaz Ali

E-Commerce:

Testing framework: Cypress
This test will be End-To-End test
We will start with the authentication flow for our e-Commerce website:

  1. Signin page
  2. signup page
  3. Forget password page
  4. Change password page
  5. Sign out

Signup and Signout Flow:

  • The test will Open the Signup page and write the credentials and click signup
  • The new user should be redirected to the home page without any errors
  • The test will make sure that the user is on the home page
  • The test then will signout and the user should get redirected to the signing page

Forget password flow:

  • The test will open the signin page
  • Click on the Forget password button
  • The page will ask for your Email to make sure that the user is in the DB
  • Some sort of verification happens and there will be a code sent to your email but the test will get that code somehow
  • The test will insert that code into the forget password page and then the user will get redirected to the change password page
  • The test will make sure that we are on the change password page without any issue
  • Then test then will insert the new password and click on the 'change password' button
  • Then the user will get redirected to the signin page
  • The test will signin with the new password and should successfully signin
  • Then the test will make sure that we are on the home page

@Eng-NUREDDIN
Copy link

@Eng.NUREDDIN @tomiece317 muhammedhasann Rayan alrouh
smart cars:

  • testing driving capability

  • speed of the car from 0 to 100 in 5 Sec.

  • testing the engine.

  • electric wires.

  • auto driving flow.

  • measure the performance and efficiency of the smart car’s electric motor, battery, and charging system.

  • a person walking in front of the car.
    -Functional Testing:
    Evaluate the basic functionality of the smart car system, such as starting, stopping, accelerating, and braking.
    Verify the responsiveness of various controls and features, including headlights, wipers, turn signals, and horn.
    Test the effectiveness of navigation and GPS functionalities for accurate route guidance.
    Validate the performance of advanced driver-assistance systems (ADAS) like lane-keeping assist, adaptive cruise control, and automatic emergency braking.
    Usability Testing:
    Assess the smart car system's user interface (UI) and user experience (UX), including the dashboard, touchscreen controls, voice commands, and mobile app integration.
    Evaluate the intuitiveness and ease of use of different features, ensuring they are user-friendly and accessible.
    Test the effectiveness of voice recognition and natural language processing for controlling various functionalities.

    to Everyone
    Test Objectives:
    -Evaluate the functionality of the smart car's autonomous driving system, including its ability to detect and respond to various traffic scenarios, road signs, and pedestrians.
    -Assess the performance and accuracy of the car's collision avoidance system in different driving conditions and speeds.
    -Verify the reliability of the car's communication system, ensuring seamless connectivity with other smart cars, traffic infrastructure, and navigation services.
    -Test the usability and user interface of the smart car's control panel, ensuring it is intuitive and easy to operate for both experienced and novice users.
    -Validate the effectiveness of the smart car's energy management system, optimizing battery usage and maximizing driving range.
    -Evaluate the security measures implemented in the smart car's software and hardware components, assessing vulnerabilities and potential risks of hacking or unauthorized access.
    -Conduct compatibility tests to ensure the smart car integrates smoothly with external devices, such as smartphones or home automation systems.

planning :
testing the UI/ UX by ensuring the application and dashboard design is the same as the design pages.
testing the autopilot driving in a virtual environment to make sure the car passes hitting objects
and testing the connection of sensors.
test if the smart car can connect and interact with different devices, platforms, and networks.
-Functional Testing: Verify the correct operation of each feature and functionality of the smart car, including autonomous driving, navigation, entertainment, and climate control systems.
-Usability Testing: Assess the user-friendliness of the smart car's interface, evaluating the ease of use, responsiveness, and clarity of information provided.
-Performance Testing: Measure the performance and responsiveness of the smart car's systems under different loads and driving conditions, checking for any bottlenecks or performance issues.
-Security Testing: Identify potential vulnerabilities in the smart car's software and hardware, conduct penetration tests, and ensure the implementation of robust security measures.
-Compatibility Testing: Ensure compatibility with various external devices, protocols, and standards commonly used in the automotive industry.
-Edge Case Testing: Design test cases to evaluate how the smart car handles extreme inputs, boundary values, and uncommon usage scenarios, such as sudden weather changes, extreme temperatures, or unusual road conditions.
-Regression Testing: Continuously test previously validated functionalities to ensure they remain unaffected by new updates or changes.

Test Scenarios:
Functional test: To test if the smart car can start, stop, accelerate, brake, steer, and park properly.��Usability test: To test if the smart car’s features such as navigation, parking assist, and collision avoidance are easy to use and provide a good user experience.��Performance test: To test if the smart car’s electric motor, battery, and charging system delivers adequate power, range, and efficiency.��Security test: To test if the smart car’s software and communication systems are secure from unauthorized access or attacks.��Compatibility test: To test if the smart car can connect and interact with different devices, platforms, and networks.
Functional test: To test if the smart car can start, stop, accelerate, brake, steer, and park properly.��Usability test: To test if the smart car’s features such as navigation, parking assist, and collision avoidance are easy to use and provide a good user experience.��Performance test: To test if the smart car’s electric motor, battery, and charging system delivers adequate power, range, and efficiency.��Security test: To test if the smart car’s software and communication systems are secure from unauthorized access or attacks.��Compatibility test: To test if the smart car can connect and interact with different devices, platforms, and networks.
-Abnormal Scenario: Simulate a situation where the smart car encounters a sudden loss of GPS signal while driving and assess its ability to maintain accurate positioning and navigation.
-Collision Avoidance: Create a scenario where the smart car approaches a stationary obstacle on the road, such as a parked vehicle or debris, and evaluate its ability to detect and successfully avoid the obstacle.

-Emergency Brake: Test the emergency braking system by simulating a scenario where the smart car detects an imminent collision and automatically applies the brakes to prevent the impact.

-Adverse Weather Conditions: Evaluate the performance of the smart car's sensors, cameras, and autonomous driving capabilities in challenging weather conditions like heavy rain, fog, or snow.

Test Cases:
Functional test case: Acceleration test Description: To measure the acceleration performance of the smart car from 0 to 62 mph�Preconditions: The smart car is fully charged and has no passengers or cargo�Steps:�Connect a data logger to the smart car’s OBD port�Find a flat and straight road with no traffic�Start the data logger and reset the speedometer�Press the accelerator pedal fully and maintain it until the speedometer reaches 62 mph�Release the accelerator pedal and stop the data logger�Expected results: The smart car should accelerate from 0 to 62 mph in less than 12 seconds�Actual results: (to be filled in after conducting the test)

Usability test case: Navigation feature test��Description: To test if the navigation feature of the smart car is easy to use and provides accurate directions�Preconditions: The smart car is connected to a smartphone with a navigation app installed�Steps:�Enter a destination on the smartphone app�Follow the voice instructions from the app�Observe if there are any errors or delays in receiving directions�Compare if there are any discrepancies between directions on app screen vs voice instructions vs road signs�Arrive at destination�Expected results: The navigation feature should provide clear voice instructions without errors or delays. There should be no discrepancies between directions on app screen vs voice instructions vs road signs. The destination should be reached without getting lost or taking wrong turns2�Actual results: (to be filled in after conducting
Security test case: Software update test�Description: To test if the software update feature of smart car is secure from unauthorized access or attacks�Preconditions: The smart car is connected to the internet via Wi-Fi or a cellular network�Steps:�Check if there is any available software update for smart cars on the official website or app�Download the software update file from the official source only�Verify digital signature of the software update file before installing it�Install the software update file following the instructions on the screen�Restart smart car after installation is complete�Check if a software update is successful by verifying the version number on the screen�Expected results: Software update feature should only download files from official sources with valid digital signatures. Software update file should install without errors or interruptions. The software update should improve the functionality or performance of smart car without introducing new issues4�Actual results: (to be filled in after conducting�the test)

the result:
basically expecting BMW.
a working car that accelerates to 100 in 4 seconds, scans what it sees and do react to it, expecting the car to be safe and not hacked form outside it inside, a smooth friendly system for the user

@fatimaali200
Copy link

team: @fatimaali200 , Sara Nafisa, @ahmadalashtar ,Ahmad Ramin

Product Selection: Sign In Page

Test Objectives:
1-Assess the functionality of the sign-in page, including user authentication and error handling.
2- Test the security measures implemented, such as password encryption and prevention of unauthorized access.

Test Planning:
1-Test the email verification process (if applicable).
2-Test the user login process, including valid and invalid login credentials.
3- Verify that a user can successfully sign in with valid credentials.
4-Evaluate the clarity and consistency of instructions provided on sign in page
5-Test the prevention of common security vulnerabilities, such as SQL injection or cross-site scripting.

Test Scenarios:
a) Scenario: User login with valid credentials
Preconditions: User accesses the sign-in page
Steps:

  1. Enter valid login credentials (username/email and password).
  2. Click on the "Sign In" button.
    Expected results: The user should be successfully logged in and redirected to the appropriate page.

b) Scenario: User login with invalid credentials
Preconditions: User accesses the sign-in page
Steps:

  1. Enter invalid login credentials (username/email and password).
  2. Click on the "Sign In" button.
    Expected results: Appropriate error messages should be displayed, indicating the invalid credentials.

Test Cases:
a) Test Case: User login with valid credentials
Test case identifier: TC003
Description: Verify that a user can log in successfully with valid credentials.
Preconditions: User accesses the sign-in page.
Steps:

  1. Enter valid login credentials (username/email and password).
  2. Click on the "Sign In" button.
    Expected results: The user should be logged in and redirected to the appropriate page.
    Actual results: [To be filled in after conducting the test]

b) User login with invalid credentials
Test case identifier: TC004
Description: Verify that appropriate error messages are displayed for invalid login credentials.
Preconditions: User accesses the sign-in page.
Steps:

  1. Enter invalid login credentials (username/email and password).
  2. Click on the "Sign In" button.
    Expected results: Error messages should be displayed indicating the invalid credentials.
    Actual results: [To be filled in after conducting the test]

@ozlemkeles
Copy link

@TasneemAkkad @Mustapha909 Rawan Kamal Mustafa
Product: WhatsApp
Test Objectives: messages, calls, video calls, voice messages, media, communities, status, settings, security
Test Planning:
1- Functional Testing: Making sure all messaging and calling features are working correctly.
2- Performance Testing: Measuring messages delivery time, call/video call quality, quality and the speed of sharing media/files.
3- Security Testing: Checking the data leaks, user information, unauthorized access.
Test Scenarios:
Messaging, video calling/calling, sharing media, encrypted messages, login functionality
Test Cases:

  • Sending Text Messages:
    Prerequisites: Users need an internet connection. User1 and User2 have to be logged in WhatsApp.
    1- Open the app and navigate to the search bar.
    2- Type the user2's name and go to the chat.
    3- Tap the typing bar and start to type your text.
    4- Press on the send button.
    Expected Result: Logged in successfully, the search bar is working correctly, user1 is able to type and send the text, the text is delivered to user2 correctly.
  • Video Calling:
    Prerequisites: Users need an internet connection. User1 and User2 have to be logged in WhatsApp.
    1- Open the app and navigate to the search bar.
    2- Type the user2's name and go to the chat.
    3- Tap the Video Call symbol next to the profile photo.
    Expected Result: Logged in successfully, the search bar is working correctly, user2 is able to receive the video call, the video call should connect successfully, call quality should be clear.

@harethriyadh
Copy link

harethriyadh commented May 30, 2023

  • F. Zehra Aydın
  • Ammar Almuain
  • Harith Riyadh
  • Guled Khadar Abdi
    Car:
    • if gaz is pressed the car should move forward...
    • if breaks are activated the car should stop...
    • If the horns are activated, the car should beep...
    • if the steering wheel is steered right the car should be got right...
    • if the steering wheel is steered left the car should be got left...
    • if you slide the handle the car door will open...
    • if you switch the lock the car doors will be locked...

@jimaa-maya
Copy link

@noorin99, @HishamWattar. @jimaa-maya, mahmoudshahin

-The Product: NetFlix
-Test Objectives: Testing filtering and searching, testing payment.
-Test Planning: functional, testing tools: Jest Framework (Unit testing).
-Test Scenarios: Searching-- (If the input does not exist in the database). Payment--(Check if the default Credit or Debit card gets automatically added).
-Test Cases:

(If the input does not exist in the database):
describe('Search Database', () => {
test('Input does not exist in the database', () => {
// Arrange
const input = 'grape'; // Input that does not exist in the database

// Act
const result = searchDatabase(input);

// Assert
expect(result).toBe(false); // Expect the result to be false

});
});


(Check if the default Credit or Debit card gets automatically added):
describe('Payment', () => {
test('Default Credit or Debit card is automatically added', () => {
// Arrange
const paymentDetails = {
amount: 100,
cardNumber: '',
// Other payment details...
};

// Act
const result = makePayment(paymentDetails);

// Assert
expect(result).toBe('success'); // Expect the payment to be successful
expect(paymentDetails.cardNumber).toBe('1234567890'); // Expect the default card to be added

});
});

Expected results: The results of executing the function under the written conditions should pass the test, indicating that the function behaves correctly.

@Younesnz
Copy link

Room 12: @Younesnz @tarik310 @ilaydanurguzel1

Product: eBay

Test Objectives:

  • if it's compatible with different browser and devices
  • speed
  • Performance
  • Security
  • Authentication
  • Functionality
  • user interface and experience

Test Planning:

Functional Testing:

  • Searching
  • content
  • transactions
  • placing bid

usability:

  • user experience, user interface and being user friendly
  • performance
  • speed, website traffic under different network conditions

Security:

  • Authentication, encryption and authorization

Compatibility

  • with web browsers (Chrome Firefox and …) and operating systems (Android, IOS, …) and different screens

Test Scenarios:

Normal: user logs in, searches for a product, adds it to the card, searches for other products and add them to the card, proceeds to checkout
Abnormal: the user shouldn't have access to the routes.
Edge case: Ordering something which is out of stock

Test Cases

Normal:
Test Case Name: Purchase Flow
Description: Test from logging in to purchasing products, including search, add to card and transactions
Preconditions: the user should be signed up already
steps:
1- Authenticate the user with the database for logging in
2- searching for a product and the results
3- Add to card button and it successfully adds to the card
4- Adding more than 1 product to the card
5- Showing the payment page
6- validating shipping and card info
7- Review the order summary and confirm the purchase.

Expected Results: The product is successfully purchased, and the user receives a confirmation message.

Out of Time!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment