The mini-program Whisper Shh instruction video, made and dubbed by Yuhao Sun
An anonymous message board powered by WeChat Mini Program named Whisper Shh is the project of our group. It aims to construct an anonymous platform for users to share their feelings with others without any concern. The university students and staff will be the target users. On our program, as an initial plan, the users are allowed to execute several functions, including Post Anonymous Messages, Custom Tags, Post a Picture, Filter Messages by Using Tags, Like & Comment to a Message, Private Chat, Report & Block a Message and Check “Me” page. However, Private Chat function has not been implemented due to the time limitation. Other than this, all functions can perform well currently. Due to the potential, unpredictable and tough problems brought by this novel platform, we, therefore, adopted the Spiral Model as our development approach – iterative working approach. For any problem occurred, we will work on it iteratively instead of only focusing it.
In my individual report, I demonstrated the whole process of our project, including the initial plan, the analysis of requirements and assumptions, system design, the detail of implementation, the approaches and the results of testing, the evaluation of our project and a discussion from a personal perspective. The report file contains 19 pages, which consist of 2 pages directory, 13 pages main body and 4 pages appendix (around 8000 words in total). If you would like to read the full document, please email Yuhao to request.
For this project, I have been chosen as a team leader. Therefore I was responsible for some aspect of it. Other than my own part, I have contributed to delivering the presentation and creating the visual aids of the presentation (PowerPoint) with another teammate. To prepare it, I have gathered our ideas that came out during a few sessions of brainstorming, creating a simple guideline. I have found confrontation with my teammates illuminating, being useful to find mistakes and imperfections. Since I have had past experience presenting various projects, I have offered to give the final presentation in front of the class. Despite each member having his own tasks and work to do, we have collaborated together during every phase: for instance, me being the only responsible for the testing part. By using White-Box Testing and Black-Box Testing approaches, I have worked together with Front-End and Back-End Teams to test the program, as well as with coordinating some part of the project. In addition, I drew some tables and diagrams, other than recording the introduction video (the video at the top).
Testing is a process that consist in executing the implemented program in order to find potential errors. Several testing methods have been adopted here, including Black-Box Testing and White-Box Testing. Straightforwardly, the WeChat Mini Program will be tested from user’s perspective and developer’s perspective. Our project Whisper Shh is a WeChat Mini Program, and WeChat Mini Program Platform provides various interfaces for developers to use so that it improves the efficiency of the program. It also illustrates that most errors occurred in the program are found during Black-Box testing instead of White-Box Testing. However, the result of Black-Box testing is a good guide for tester to operate White-Box testing with the targets. There is one member in Testing Team, i.e., I am the only one testing member for this project.
Block-Box Testing, or also known as Behavioural Testing, is a software testing method in which the tester is not allowed to access the internal implementation, design or structure of the program. In Black-Box testing, all functional requirements will be tested. Besides, these tests can also be non-functional.
As its name, the software program for the tester is more similar to a black box from the tester’s perspective, or also from the user’s perspective – inside which one cannot see. Under this testing method, following categories of potential errors will be considered:
- Missing or incorrect functions
- Errors of interfaces
- Behaviour or performance errors
- Termination or initialization errors
- Errors in external database access or data structures
In order to find as many of the potential errors above listed as possible, testing team will test the program from 6 directions under Black-Box testing, as follows:
- Authorisation Testing
- User-Interface Testing
- Functional-Requirements Testing
- Compatibility Testing
- Accessibility Testing
- Network Testing
Testing team will try their best to operate as many test cases above reported as possible to find eventual errors. The detailed test cases and corresponding results will be demonstrated according to teach testing direction illustrated above. Additionally, due to the different system performance between Android and iOS system, all tests results between two systems will be shown separately.
White-Box Testing, or also known as Open Box Testing, Transparent Box Testing, Code-Based Testing or Structural Testing, is a software testing method in which the tester will be aware of the internal implementation, design or structure of the program. In White-Box Testing, the structure of the program and its performance will be considered. As its name, the software program for the tester is more similar to a transparent box from the tester’s perspective, or also from the developer’s perspective – inside which one can fully see. In other words, for White-Box Testing, testing team will test beyond the user interface and into the nitty-gritty of a system. To simplify all above, we will test the program based on following levels:
- Unit Testing
- Integration Testing
- System Testing
White-Box testing runs through the development of the program. Testing team works with development team to test the codes and find the potential bugs. We choose inputs, both legal (valid and invalid) and illegal inputs to exercise paths through the code and determine the appropriate outputs. If the outputs are against our expectation, we will find out where and why is going wrong.
According to the initial plan, the corresponding requirements are considered. During the development of the program, both on Front-End and Back-End, the testing has gone according to the plan. Based on the testing reports, the developers are able to correct the errors properly and improve the quality of the program dramatically. The deliverable of our project demonstrates that it meets the initial plan mostly. With the evaluation of our program, in the future, a strict-followed time plan and the suitable work distribution of group members will improve the project.
Email Yuhao to request the presentation PowerPoint, the testing report, or the full individual report which all are designed/written by Yuhao Sun.