From 5eda5e9f73d17b29119aa8a0e334ade2baf75ae2 Mon Sep 17 00:00:00 2001 From: Ian Prins <prinsij@mcmaster.ca> Date: Mon, 31 Oct 2016 11:02:23 -0400 Subject: [PATCH] move PoC to template, various small changes --- Doc/TestPlan/TestPlan.pdf | Bin 192241 -> 196991 bytes Doc/TestPlan/TestPlan.tex | 79 ++++++++------------------------------ 2 files changed, 16 insertions(+), 63 deletions(-) diff --git a/Doc/TestPlan/TestPlan.pdf b/Doc/TestPlan/TestPlan.pdf index fb85b02b201c80b4ab00fd156170dd09f323b96c..3d27cff627bcfc2f07f634046b7a339f448fc2da 100644 GIT binary patch delta 46302 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 I<F(WO19%V};{X5v delta 42387 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 P44$4wSXk|}I{p6vBp0T{ diff --git a/Doc/TestPlan/TestPlan.tex b/Doc/TestPlan/TestPlan.tex index 7ddf1b5..cb7d52b 100644 --- a/Doc/TestPlan/TestPlan.tex +++ b/Doc/TestPlan/TestPlan.tex @@ -127,6 +127,7 @@ 10/26/16 & 0.4.1 & Added Test Template \\ 10/30/16 & 0.5 & Added Non-Functional Req. Tests \\ 10/30/16 & 0.5.1 & Added Bibliography \\ + 10/31/16 & 0.6 & Switch PoC to test template \\ \bottomrule \end{tabularx} \end{table} @@ -344,78 +345,28 @@ \subsection{Static Testing} - \test{P}{Static}{Automatic}{White}{None}{Program Source}{Program Executable}{Verify that the program compiles with g++} - - \begin{enumerate} - - - \item{test-id2\\} - - Type: Dynamic/Manual/Automatic - - Initial State: None - - Input: 30-60 seconds of gameplay - - Output: Breakdown of program memory usage. - - How test will be performed: Use valgrind memcheck utility to verify that program does not leak memory or utilize uninitialized memory. - - \end{enumerate} - - \subsection{Basic Movement} + \test{P}{Static}{Automatic}{White}{None}{Program Source}{Program Executable}{Verify that the program compiles with g++.} - \begin{enumerate} - - \item{test-id1\\} + \test{P}{Dynamic}{Manual}{White}{None}{A brief but complete playthrough of the game.}{Breakdown of program memory usage.}{A tester will briefly play the game, and a developer will use valgrind's memcheck utility to verify that program does not leak memory or utilize uninitialized memory.} - Type: Dynamic/Manual + \subsection{Rendering} + \test{P}{Dynamic}{Manua}l{Black}{Gameplay State}{30-60 seconds of gameplay.}{ The player character and any dungeon features should be shown at the correct location with the correct glyphs. Correct player statistics will be shown along the bottom. The dialog box will correctly display the log and any prompts.}{A tester will manually play the game and verify the display is correct.} - Initial State: Normal playstate - - Input: Movement commands - - Output: Player should move about the level, without clipping through walls or failing to walk through empty space + \subsection{Dungeon Generation} + + \test{P}{Dynamic}{Manual}{Black}{None}{Repeated restarts of the game}{Level should contain ROOMS\-PER\_LEVEL rooms, which should form a connected graph.}{A tester will manually start the game, briefly explore the level to verify correct generation, then repeat this process until confidence is achieved.} - How test will be performed: A developer will manually walk through the level + \subsection{Basic Movement} - \end{enumerate} + \test{P}{Dynamic}{Manual}{Black}{Gameplay State}{Movement commands}{Player should move about the level, without clipping through walls, failing to walk through empty space, or jump to an unconnected square.}{A tester will manually walk through the level, and visually verify correctness.} \subsection{Score File} - \begin{enumerate} - - \item{test-id1\\} - - Type: Dynamic/Manual - - Initial State: Main menu - - Input: Enter name, then quit, restart game, enter name again, and quit. - - Output: 1st name should appear in both the first and second score screens. The 2nd should appear in the second. Both should have correct values for level, cause of death/quit, and gold collected. - - How test will be performed: A developer will manually perform the above input, and verify the output. - - \end{enumerate} + \test{P}{Dynamic}{Manual}{Black}{Menu State}{Enter name, then quit, restart game, enter name again, and quit.}{1st name should appear in both the first and second score screens. The 2nd should appear in the second. Both should have correct values for level, cause of death/quit, and gold collected.}{A developer will manually perform the above input, and verify the output. Should be tested both with and without an initial score file.} \subsection{Line of Sight System} - \begin{enumerate} - - \item{test-id1\\} - - Type: Dynamic/Manual - - Initial State: Normal playstate - - Input: Movement commands - - Output: Screen should display correct portions of level, with correct coloration schemes. This means that the player should be able to see the entirety of a room they are in or in the doorway of, and only their adjacent squares if they are in a corridor. Squares that the player has seen in the past but cannot see currently should be shown greyed out. Squares they have not seen should be black and featureless. - - How test will be performed: A developer will manually walk through the level, verifying that the above LoS rules are preserved, especially in edge cases like the corners of rooms and doorways. - - \end{enumerate} + \test{P}{Dynamic}{Manual}{Black}{Gameplay State}{Movement commands}{Screen should display correct portions of level, with correct coloration schemes. This means that the player should be able to see the entirety of a room they are in or in the doorway of, and VIEW\_DISTANCE squares away if they are in a corridor. Squares that the player has seen in the past but cannot see currently should be shown greyed out. Squares they have not seen should be black and featureless.}{A developer will manually walk through the level, verifying that the above LoS rules are preserved, especially in edge cases like the corners of rooms and doorways.} \newpage \section{Comparison to Existing Implementation} @@ -425,7 +376,7 @@ \section{Unit Testing Plan} \label{section6} - After examining the boost library's utilities for unit testing, we have decided we will not use a unit testing framework for testing the product. We concluded that adding a framework would not make the work significantly easier, while reducing our flexibility and adding installation difficulties. Since we are not using a framework, drivers will be written by hand. Stubs will be produced when necessary to simulate system components. + After examining the boost library's utilities for unit testing, we have decided we will not use a unit testing framework for testing the product. We concluded that adding a framework would not make the work significantly easier, while reducing our flexibility and adding installation difficulties. Since we are not using a framework, drivers will be written by hand. Stubs will be produced when necessary to simulate system components. Since there are no database or network connections, stubs should hopefully be kept to a minimum. However, functions may be required to construct objects in states suitable for easy testing, for example creating a level or player with certain known properties, rather than by random generation. \subsection{Unit testing of internal functions} Internal functions in the product will be unit tested. This will be reserved for more complex functions so as to not waste development time unnecessarily. As complete code coverage is not a goal, generic code coverage metrics will not be used. Instead, care will be taken that complex functions are covered by unit tests. The following are examples of internal functions that are initial candidates for unit testing. Other functions will be added as necessary: @@ -433,6 +384,7 @@ \item The dungeon generation functions. The work of generating the dungeon is complex, but it is also easy to automate verification of dungeon properties such as a correct number of rooms, connectness, compliance with formulas for item generation, presence or absence of certain key features such as the stairs connecting levels or the Amulet of Yendor in the final level. \item The keyboard input functions. As libtcod provides a Key struct which models keyboard input, we can mock/automate these functions. They are fairly complex, and since they return a pointer to the next desired state (similar to a finite state machine) we can easily verify their behavior. \item The item activation functions. For example it could be verified that when the player drank a potion of healing their health increased (if it was not at its maximum), that a scroll of magic-mapping is reveals the level, or that a scroll of identification reveals the nature of an item. + \item The item storage functions. Each item is mapped to a persistent hotkey in the player's inventory. Certain items can stack with copies, reducing the amount of inventory space they take up, and how they are displayed. These factors make the inventory fairly complex. It is however easily verifiable, and automated testing can examine edge cases that would be impracticle to test manually. \end{itemize} \subsection{Unit testing of output files} @@ -464,6 +416,7 @@ \bottomrule \textbf{Parameter} & \textbf{Value} \\ \hline + ROOMS\_PER\_LEVEL & 9 \\ FINAL\_LEVEL & 26 \\ HEIGHT\_RESOLUTION & 400 \\ LUMINOSITY\_DELTA & 0.5 \\ @@ -475,7 +428,7 @@ PLAYTEST\_LONG\_TIME & 3 \\ REGEX\_INTEGER & \lstinline$(char|int|long).*(,|;)$ \\ START\_LEVEL & 1 \\ - VIEW\_DISTANCE & 2 \\ + VIEW\_DISTANCE & 1 \\ WIDTH\_RESOLUTION & 1280 \\ \toprule \end{tabular} -- GitLab