Testing
We follow manual testing here for the application, a type of software testing where testers manually write and execute test cases without using any automation tools. This method is the most primitive type and helps in finding bugs in the application code, ensuring that application is error free and is deliverable to the user/customer. Different Levels of Manual Testing Types of manual testing are
- Unit Testing
- Integration Testing
- System Testing
- Acceptance Testing
- Black-box Testing
- White-box Testing
If we make a broad division, Black Box testing means that the tester has no idea of how the code is written behind whereas White Box tester has a clear idea on how the application is designed and code is implemented.
Black-Box Testing
As mentioned above, Black box testing is the testing method which is used to test the software without any knowledge of code or program. In short, the code under test environment is called as “Black-Box”. When performing the testing, the tester expects particular output/results, but not aware of how the application actually processes internally. Since this method is considered as the last step, it is to check whether the application is working as per user expectations.
White-Box Testing
White Box Testing is a testing method in which the internal design/ implementation code is known to the tester. In other words, we call it as internal sanity test which is done by the developer itself. Moreover, he/she studies the design and code of a certain section, determines all possible permutations and combinations and verifies the outputs against the expected outcomes. White Box Testing is similar to the work of a mechanic who examines the engine to see why the car is not moving. It is performed early in the testing process, while black-box testing is applied during later stages.
White Box testing is done in prototype stage to obtain satisfactory results and proceed with further developments and testing.
Test Case 1
Entering the pin and signing in. Once the user is prompted to enter pin and Login,The Login() method in the Login Activity Class invokes Database Helper Class method getUser(pin) which checks if a entry exists for that pin in the user_table and As the app opens, navigation to the appropriate intent is in accordance with the status of the session.
Test Case 2
The OnDateSet method implemented in EnterActivity Class displays a date picker using which user can select appropriate Start and End dates while entering activities.The method works flawlessly and the user was successfully able to select the desired dates.
Testcase 3
The AddData method in the EnterActivity Class adds the data input by the user into the database invoking another method within the database helper class to insert these data into the database and also eventually checks if the data gets inserted or not by returning a boolean value and a toast.
Test Case 4
The getActivitiesByDate method in the Database helper Class is invoked when the Pie chart Data set is instantiated .The method inputs date to fetch all activities of that date, also stores the duration and category of that activity. This feature is working as expected.
Test Case 5
The getAllCategories() method in the Database Helper Class is used to populate the spinner with category values in database.This method is called and the spinner in turn is populated with category names and their respective colours.
Summary of Changes
- Added provision to filter category by colour
- Added the option of auto recognizing an activity by entering the first alphabet
- Added possibility to email the data as PDF