@@ -189,6 +189,10 @@ This game is inspired from an old game made by Patrick Gillespie in JavaScript.
\section{Unit Testing}
Due to the nature of the project, manual and integrated/system testing will be performed throughout the development process to check for correctness and verify adherence to functional and nonfunctional requirements.
In future implementations, it may be possible to apply unittests but with the current implementation of the software, a complete reimplementation would be required in order to create unit test cases. The assert statements available will not help with testing the gameplay since the game itself runs within the 1 main function that controls that game, the game() function in the Gameplay module. This means that within the while loop, the local variables and snake state variables are changing and there is no checkpoint to use in the assert statements since this all happens in the middle of a function call, in an infinite while loop (until the user dies).
\section{Changes Due to Testing}
Through integrated and system testing, which encompassed the majority of the testing done on the software, the user interface as well as bugs and errors in the gameplay were modified to fix erroneous properties of the software. By continuously executing the game, it was easy to estimate changes in object coordinates within the interface. For example, the menu buttons were arranged through trial and error by testing the software continuously until the desired look was acheived. Beyond that, system and intergrated testing confirmed that all modules were working correctly and any change in one of the modules did not affect the function of other modules through dependency relations.
...
...
@@ -262,9 +266,6 @@ AC7 & M2\\
\label{TblACT}
\end{table}
\section{Trace to Modules}
Integrated testing can visibly be traced back to the modules created. The main interface uses the Interface module along with GUI module for interface text and buttons. It is connected to the highscore module and theme module through the highscore and difficulty level buttons respectively. It also connected to the help module through the Help button. If any of these buttons is clicked and an error is released, the error can be traced back with ease depending on the button that was clicked prior to the malfunction.