-
-
Notifications
You must be signed in to change notification settings - Fork 140
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Play mode tests #1168
Play mode tests #1168
Conversation
…ndency injection.
Created separate test proxies and helpers to be used by all types.
…RoundSystem to imitate Broadcasts.
…t to set up in UnityTest rather than SetUp.
…ate out "Known Issue Reproduction"
…ouse position read in ItemGrid.cs
Closed for now, to allow moving forward on other part of the code base. |
Fixed, and updated to work with the current build. |
I would review this but I am unfamiliar with the testing "system" that is already implemented and ultimately don't know exactly how to run these tests in order to properly review the PR. |
@cosmiccoincidence my request was more to let you know your previous request can be dismissed. However that made me think I should add a step by step guide to use it, so I'll do that (probably this weekend). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works as expected. Wish someone could have looked at the code a bit more but it's time this get merged already.
Don't forget to document this on gitbook.
Summary
Taking back Ryan's work #1050 to have in game play mode tests. Citing Ryan :
Edit Mode
EditMode tests have been restructured to be more clear in what they are testing. Some PlayMode tests have been created. PlayMode tests require a build to be made, and most will automatically launch the build (where required) in order to establish client / server connections. I have restricted Playmode tests from running in github actions, intent is for this restriction to remain even after PR is complete and merged.
Play Mode
These are play mode tests that are intended to test game systems under runtime conditions. For example, a test could confirm the player ability to effectively embark onto the station at round start, and with late join etc.
Known Issue Replication [Not yet complete]
Known Issue Replication
These are play mode tests that are intended to provide actions to reliably reproduce a specific fault (as listed in github issues) under a variety of conditions, such as different server / host / client arrangements. This allows contributors attempting to resolve those faults to more clearly understand the problem, and thoroughly check whether all aspects of the issue have been resolved prior to pushing their solution.
Todo
Changes to Files
Technical Notes (optional)
Known issues
How to test it
Future work
These are play mode tests that do not contain Assertions, but rather a free play loop that can be exited by a certain key combination. The purpose of this is to easily load the game under specific configurations. This will allow specific scenarios to be created that can be playtested by a reviewer.
Helpful thread : https://forum.unity.com/threads/recording-and-replaying-input.739187/
Fixes (optional)
closes #1025
closes #984