How to properly test multiplayer FPS game?

Hi,

This question is not specific to Unity or to to a specific framework.

If I am developing multiplayer FPS, it’s obviously important to test different multiplayer scenarios properly before release to avoid embarrassing releases.
But to think of it, there’re a lot of scenarios that needs testing and it seems to be hard to test.

For example movement error correction, this might be hard to test but in actually gameplay it can happen a lot especially if the game has melee weapons and would get close to each other.

Shooting a fast moving player, this can easily result in a lot of problems, like either desynchronization of dead state for the player, or the player feels like he shot the other player but it had no effect, etc…

Even higher refresh rate monitors can result in problems that might not happen on lower refresh rate monitors because of the update and render frequency.

Those and others are obviously scenarios that can’t be tested locally with 2 unity windows open. Also if we have some inhouse developers test with each other some desynchronization problems might not be apparent because each developer testing can’t see the other’s screen.
For example if two players pick up ammunition at the same time, each one of them might just think that he got it and the bug that they both picked it up wouldn’t be apparent.

So is there some kind of guide line or a helping tool that would help test all that and more possible scenarios I haven’t thought of?

Thanks for advance.

Test with real world case scenario.
Meaning, get testers, to test with.

You ammunition problem is solved by authorative server. Optionally make P2P, where one of the clients is a server.

Your design of Gameplay mechanics should not be affected by monitor refresh rate. At best, player may be potentially more responsive and faster reacting, if it has higher FPS count.