This is my first posting here. I already searched here and couldn't find an answer.

I'm in the process of integrating Appium with Selenium Grid to run our iOS and Android mobile app test cases in parallel. I'm slowing digesting the concept of parallelism in Selenium Grid. I read in some articles about integrating with TestNG and also enabling parallelism in TestNG.

My question is why should I take this double approach of running test cases parallelly?. Isn't it enough to configure Selenium Grid and bind to Appium servers for each of the devices and automatically get parallel feature enabled? Why should I also enable parallelism in TestNG?

Please advise.

2 Answers 2


Your test runner is the source of all activity driven through the Selenium Grid. If you want more than 1 set of activity (more than 1 thread) to run at a time, then parallelism needs to come from your test runner.

TestNG is the best ways to fork threads in my opinion, if all test activity comes from one test runner. (Gradle and Maven Surefire are another option as well) Now, on the other hand, if you have multiple systems executing separate test runners against a single Selenium Grid, then that means "parallization is implied".


Appium is open source framework which helps you automate mobile application. We write automated tests for mobile application using Appium. Selenium is open source framework which helps you automate web browsers. We write automated tests for web application using Selenium. Selenium Grid is to create an infrastructure where you can work with multiple browsers, devices or simulators.

TestNG is testing framework which helps you invoke your tests and manage test suites. So TestNG is the one which helps you execute tests in parallel written using Selenium/Appium to be executed on infrastructure setup using Selenium Grid.

Hope it helps.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.