3.1 Testing for Function and Robustness

Criteria To Assess

Find success criteria that relate to function and robustness

Criterion
Description

18

The game must run without crashing for an extended time

19

The game must run at at least 30 frames per second

Criterion 18

In this test, I needed to put the game under as much stress as I could by inputing unbinded inputs and clicks that the game wasn't programmed to handle. The program didn't respond to these clicks and they couldn't create any game breaking bugs from these keys, which would reduce the player experience.

  1. When playing on lower resolutions the game would render wrong, and would be "squished"

  2. When playing if you hold "D" you can infintiely play the game as the game doesn't spawn enough enemies in to be able to kill the player, and the player simply kills all enemies.

Criterion 19

In this test, I wanted to check if the game ran at 30fps or more, and this would ensure that the game would be comfortably playable, responsive and smooth.

The way I calculated the frames was throught the performace monitor built into most modern browsers. I could zoom into a captured section of game play, and from there I could check how often each frame updated. I found that each frame updated every 0.017 seconds, or 17 milliseconds.

From this you can find the divide 1 by 17 to get the frames per millisecond, and then multiply it by 1000 to get frames per second. The result of this is 58.82 frames per second which is nearly double of what I wanted as a minimum frames per second. This is an excellent result and is a pass for this test.

Firefox's Performance Monitor

Deployment Errors

When I tried to deploy my game, I used vercel, a common javascript based hosting software, that is commonplace in website development and production.

However when I tried to deploy on here, there would be none of the phaser code working, which I believe is because phaser isn't designed to work with vercel and vice versa, and the static webpages that vercel is designed for simply meant that the phaser code wasn't able to run. This is the link to the game.

I tried this with github pages too, however the same issue occured.

To get round this issue I was having, I provided instructions on how to install the game's files, and packages so that the testing could be done locally on my tester's machines, rather than it being done on the internet.

I also made releases on Github so that anyone would be able to see the changes made with each version, and which they'd like to install. This also means that people are able to download and play the game locally which may see better performance compared to on the browser through vercel or the likes.

My pre-release builds, used for testing

Last updated