Testing user interaction of 2 or more different users


#1

Hi there,

Currently we are stuck during our testing phase for a application.
We need to test the interaction between 2 different users, who both need to log in on the same host and perform some tests.

Just to clarify, I am looking to control 2 browsers at the same time, not yet looking into parallel testing or testing different drivers.

So this test has to go along the lines of this:
User 1:
log in,
wait for matchmaking to find other user,
Start chat with other user,
Exchange messages,
kick user

And the same goes for user 2:
log in,
find match with user 1,
start chat,
exchange messages,
get kicked by user 1,
search for new user.

How would I be able to test those functions? From what I’ve read and seen all tests done with velocity are with a single user. Is anyone able to send me in the right direction on what to do?
If we get this to work we can start working on using more then 2 users, so if you got any idea on how to scale this test with more users and different matchmaking, let me know.

Thanks in advance!


#2

Anyone that has a solution for this? As I still haven’t found an answer unfortunately.


#3

Constantly login and logout?


#4

Currently we are doing the tests manually indeed, but we want to automate it, and in the end test it with like 20-30 automated test users.


#5

Are you doing performance testing if you need that many users?

What I suggested was just:

Login as A
Send message to B
Logout
Login as B
Read message
Send reply to A
Login as A
Read reply from B

etcetera


#6

As I always test based on package, so I would split it to DDP interaction and that standard velocity browser tests for 1 user.
And for calling DDP stuff in bulk we have https://github.com/meteorhacks/meteor-down