How do you properly test the interaction between multiple users within a web application? What if you need to test that user B receives a notification immediately after user A performs some action? How do you ensure that user D’s access is cut off immediately when user C revokes it? Testing this type of functionality can be difficult, because it is not as simple as opening the application under test and typing in fields and clicking buttons. In order to ensure that the interaction functions properly and timely, you often need to concurrently open, interact with, and monitor at least two unique instances of the application.
Consider a chat app that allows two users to instantly send messages to each other through your web interface. To test this application, you must log two different users into their own instance of the app at the same time. To test that the messages are instantaneous, you need to send a message from the first user and immediately check if the message appears in the second user’s inbox. You cannot simply log in to the app with one user, send a message, and then log in as the receiving user because the immediacy of the message exchange is not tested.
Collecting screenshot evidence of user interaction adds another layer of complexity because, you have to position each unique user’s instance of the application on the screen so that they do not overlap with each other.
Manually testing user interaction quickly becomes time consuming and complicated as you need to test and gather evidence for more unique users. Many web testing tools do not even offer the ability to simultaneously run multiple instances of the application under test, however, Toffee has features to make it easy including multiple test sessions and comparative screenshots.
A Toffee test session is a single active instance of a browser that is then used to access the application under test. Toffee allows you to open multiple test sessions at the same time. This can be used to simulate multiple users because each test session can access the application as a different user. As in the chat app example, Toffee can log in to two instances of the app, send messages from one user, and confirm that the messages are immediately received by the second user.
Toffee makes it simple to document the user interaction with comparative screenshots. Using Toffee dock or move commands you can easily set up a comparative screenshot so that each unique test session does not overlap. Dock commands place a session at either the top, bottom, right, left, or any corners of the screen. Move commands allow the user to set a session to any user specified screen coordinates.
Testing multi-user interaction can be a complicated nuisance, but Toffee’s test sessions and comparative screenshots make it simple.
For more information about Toffee, visit http://toffeetesting.io, or feel free to contact us with questions at firstname.lastname@example.org.