Skip to content

test: Perf tests part 2. Adding Test Coordinator and base test class #923

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

Merged

Conversation

SamuelBellomo
Copy link
Contributor

Adding test coordinator.
This is the central communication coordinator for perf tests.
Test runner will have a test coordinator that will act as a server. Tests will create new processes that will also have TestCoordinators. TestCoordinators in these players will automatically connect as a client to the test runner.
Each test can trigger client RPCs from the test runner (server) through the TestCoordinator to execute actions relevant to the perf test.
Clients will send test results to the test runner using server RPCs.
This is further abstracted in Part 3 of this PR with ExecuteStepInContext.

To execute these, use the "Run Selected Tests (-your platform-)" button in editor to execute these tests in separate player locally. That separate player will trigger subsequent process creation.

Each child process will self destroy if idle for too long, making sure we're not leaving process alive for ever.

Currently writing confluence page on all this to document the flow.

This PR includes #922 changes

…rocess-tests/base-multiprocess-tests

* test/multiprocess-tests/orchestration:
  cleanup
…rocess-tests/base-multiprocess-tests

* test/multiprocess-tests/orchestration:
  better name
SamuelBellomo and others added 6 commits July 5, 2021 18:32
Fixed some typos

Co-authored-by: Matt Walsh <69258106+mattwalsh-unity@users.noreply.github.com>
…ity-Technologies/com.unity.multiplayer.mlapi into test/multiprocess-tests/orchestration

* 'test/multiprocess-tests/orchestration' of github.com:Unity-Technologies/com.unity.multiplayer.mlapi:
  Apply suggestions from code review
…rocess-tests/base-multiprocess-tests

* test/multiprocess-tests/orchestration:
  Applying suggestions
  Apply suggestions from code review
  consistent naming
…rocess-tests/base-multiprocess-tests

* test/multiprocess-tests/orchestration:
  #
…rocess-tests/base-multiprocess-tests

* test/multiprocess-tests/orchestration:
  simpler flow
…rocess-tests/base-multiprocess-tests

* test/multiprocess-tests/orchestration:
  fixes
Base automatically changed from test/multiprocess-tests/orchestration to develop July 8, 2021 21:19
…-tests

* develop:
  test: Perf tests part 1. Basis for multiprocess tests process orchestration.  (#922)

# Conflicts:
#	testproject/Assets/Tests/Runtime/MultiprocessRuntime/Helpers/BuildMultiprocessTestPlayer.cs
#	testproject/Assets/Tests/Runtime/MultiprocessRuntime/Helpers/MultiprocessOrchestration.cs
…hub.com:Unity-Technologies/com.unity.multiplayer.mlapi into test/multiprocess-tests/base-multiprocess-tests

* 'test/multiprocess-tests/base-multiprocess-tests' of github.com:Unity-Technologies/com.unity.multiplayer.mlapi:
  fix: (MLAPI.Serialization) 'specified cast is not valid.' on NetworkW… (#951)
@SamuelBellomo SamuelBellomo merged commit 833f1fa into develop Jul 9, 2021
@SamuelBellomo SamuelBellomo deleted the test/multiprocess-tests/base-multiprocess-tests branch July 9, 2021 20:32
SamuelBellomo added a commit that referenced this pull request Jul 9, 2021
…ontext

* develop:
  test: Perf tests part 2. Adding Test Coordinator and base test class (#923)

# Conflicts:
#	testproject/Assets/Tests/Runtime/MultiprocessRuntime/TestCoordinator.cs
SamuelBellomo added a commit that referenced this pull request Jul 9, 2021
…est/multiprocess-tests/adding-perf-tests-for-spawn

* test/multiprocess-tests/execute-step-in-context:
  test: Perf tests part 2. Adding Test Coordinator and base test class (#923)
SamuelBellomo added a commit that referenced this pull request Jul 9, 2021
…to test/multiprocess-tests/adding-doc-on-how-to-use

* test/multiprocess-tests/adding-perf-tests-for-spawn:
  test: Perf tests part 2. Adding Test Coordinator and base test class (#923)
SamuelBellomo added a commit that referenced this pull request Jul 23, 2021
…nsform

* develop:
  test: Perf tests part 3. Adding ExecuteStepInContext for better test readability (#924)
  test: Perf tests part 2. Adding Test Coordinator and base test class (#923)
  fix: (MLAPI.Serialization) 'specified cast is not valid.' on NetworkW… (#951)
  test: Perf tests part 1. Basis for multiprocess tests process orchestration.  (#922)
  feat: network animator Trigger parameter support (#872)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants