Pabot parallel testing

Hello, I’m experiencing a challenging issue with session management while running parallel tests using pabot in conjunction with Selenium Grid. My command for initiating the tests is as follows:

pabot --processes 3 --argumentfile1 /usr/src/app/Project/Mobile/Launcher/Device_tabA.txt --argumentfile2 /usr/src/app/Project/Mobile/Launcher/Device_pixel6.txt --argumentfile3 /usr/src/app/Project/Mobile/Launcher/Device_honor_pad8.txt --include 6PLAY Tests/

In this setup, all my nodes are connected to a Selenium Hub server launched with java -jar selenium-server-4.10.0.jar hub. My testing framework is configured with specific teardown routines:

  • Test Teardown: Each test case concludes with a Close Application command.

  • Suite Teardown: I’ve included a Close Session step, implemented as:

    Suite Teardown Close Session
    ${status} ${message}= Run Keyword And Ignore Error Close Application

This was added to ensure the closure of sessions, especially when a test fails, as I observed sessions were not closing correctly after failed tests.

However, I’m encountering an issue where, upon the completion of a test case on one device and the initiation of a new session for the subsequent test, it seems to interfere with and abruptly terminate ongoing sessions on other devices. This problem typically arises when a device finishes its first test case and starts a new session for the next one.

Has anyone faced similar issues with session management in Selenium Grid, particularly in a parallel testing environment using pabot? Any advice on how to manage sessions effectively to avoid disruptions across different devices during parallel execution would be highly appreciated.