FindNUS Documentation
Toggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

User Testing

The testing of the application can be broken down into functional and non-functional tests

Table of Contents

Functional Testing

Unit and Integration Testing

For frontend, we perform unit and integration testing with Jest and React Testing Library. For backend, unit testing is conducted with golang’s built-in testing function: go test .., while integration testing is deployed to the User Acceptance Testing backend. For more information, click here

Back to top

Non-functional Testing

Usability Testing

To perform usability testing, the tester should to complete the following tasks

TaskTodoExpected Result
SearchSearch for the item “iPhone 13” and view itUser should obtain the following item
iPhone 13
PeekView recently uploaded itemsUser should minimally see these items
Peek Results
FilterFilter recent items with the category “Electronics”User should minimally see this item
Filter Result
Submit an itemSubmit a found item of your choice (image is optional)User should see their uploaded item (Possibly requires refresh after redirect)
LoginAttempt to login using either their own mobile number, an international phone number from this page or the following test account:
Phone Number: +6511111111 (no spaces)
OTP: 111111
For the test account, user will see the following information:
Test account dashboard
For other accounts, a different user ID will be displayed
Dashboard ItemsView items uploaded with the test account aboveUser should minimally see this item
Dashboard items
LogoutAttempt to logout of the applicationRedirected to home page with login option
Back to top

Documentation Testing

A sample of the API documentation can be found here, and the deployment can be accessed at https://findnus.herokuapp.com/

Search Query Example

Refer to GET /search for more details.

To perform a search query for the item “Airpods”, you may perform a GET request at the /search endpoint with the following URL: https://findnus.herokuapp.com/search?query=Airpods You should expect to receive the following response:

[
    {
        "Id":"62b82df7a5d9182afd9665a0",
        "Name":"Airpods",
        "Date":"2022-05-18T00:00:00Z",
        "Location":"UTown Bus Stop",
        "Category":"Electronics",
        "Item_details":"Please call me if found,
         thank you!!",
        "Image_url":"https://i.imgur.com/c5MuKsu.jpg"
    }
]

Which is equivalent to the following item

Airpods

Back to top