robotframework
robotframework copied to clipboard
Run user keywords in parallel
We removed the possibility to run user keywords in parallel in 2.5 (#490).
With improvements into variable handling we might be able to bring this (or similar) functionality back.
We will look at implementing this already in 2.9, but this is such a huge task, that 2.10 might be more likely.
It could be nice if there was a way to mark data-driven templated tests to be run in parallel, kind of like Python's multiprocessing.map.
We wont have time to do this for 2.9. Moved forward (3.0?)
how about this work?
+1
Should be interesting to use this in order to run multiple tests on a selenium grid. Try to not use workarounds like pabot in order to simplify my testing platform.
Regards
I've implemented pabot https://github.com/mkorpela/pabot approach in forked robot maven plugin: at first, i'm launching dry-run execution to get all test cases names, then I'm dividing them into n separate processes, each writes output to their own directory, and finally, we need to combine outputs to a single file. Of course, it's a workaround.
10 дек. 2017 г. 11:26 PM пользователь "Richard Savio" < [email protected]> написал:
Any updates on this? I would like to work on this. However, I need some ideas on where to start and how to proceed.
Do we create a wrapper around robot.run and run multiple pybot invocations and use the visitor interface to selectively run tests in each thread? Or do we do this at a lower level? I would appreciate some guidance on where to look as I am not that familiar with the internals and it would save me some time.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/robotframework/robotframework/issues/1792#issuecomment-350578959, or mute the thread https://github.com/notifications/unsubscribe-auth/AEvxZgANjeiKt6RVcTyH1xe32T5W2GpDks5s_D5egaJpZM4Cg7UP .
Pabot solves a totally different problem than the one described here. Pabot runs tests (or actually test suites) in parallel, but this issue is about running keywords inside one test in parallel. The latter is a lot harder problem because keywords share a common state and we somehow needed to protect them messing it up.
The main problem implementing this is the amount of shared global state that Robot has. We've been removing it in previous releases and plan to continue doing it, but there's still lot of work left.
up!
Is there any progress on this topic? need to implement multithread in robotframework. :-)
No updates. Getting this implemented will require a lot of internal changes and it's unlikely they will happen in the near future. At the moment the only way to run keywords in parallel is doing that in custom libraries.