Building Course Assist Part 6: Testing the system

Building Course Assist Part 6: Testing the system

As the completion of a software project approaches a necessary final step to be taken is testing it to make sure everything is working the way it's supposed to because what's the point of building a project that doesn't work? Course Assist is no exception to this, with the project nearing completion the last remaining step in the development plan was testing. The goal of this testing phase was to make sure the Course Assist system which is comprised of 2 mobile apps does exactly what's it supposed to do in the right way it's supposed to be done, let me break it down. When testing Course Assist I had the flow of the system in mind. A general description of this system flow is that a user asks a question in the user app and an expert using the main app answers the question. Now I futher broke this general system flow into 5 smaller components to better identify less obvious issues that might be present. These components include; 1. Asking a question in the user app and receiving it the expert app. 2. Requesting to answer an asked question in the expert app and receiving requests in the user app. 3. Approving a request in the user app and receiving a receipt of notification approval in the expert app 4. Answering the question in the expert app and receiving the answer in the user app. 5 Confirming the question has been answered in the expert app and giving the expert a rating in the user app.

These components can still be broken down further into even smaller parts but just as they are is enough to perform a decent full system test. What I did was put each of these 5 components through little procedures to make sure each of them work the way they're supposed and also to make sure that the smaller components within them are working okay. After a long couple of hours of testing and making changes, each component was working the way it should. With each respective component test complete I then tested the entire system at once with each component working together with the other. With that the system test was done and I could gladly say Course Assist is a completed project.

Despite the system test being successful it revealed a few features that I hadn't yet added and some that weren't working the way they're supposed to. Some of these include badges on the navbar, optimizing the performance of sockets, profile picture place holders, etc.. now these features do not affect the general flow of the system which is why I didn't fix them in testing, but are still very important to have in the system. That being said I've dedicated the final stage in the building of Couse Assist process to sort out all these issues. Something that I'll definitely write about in the next article which hopefully will come sooner than this one😅. Thank you for reading and see you next time.