No module named 'robot.parsing.populators'

I am getting below error on running my automation script.
My configuration is : Eclipse/Python 3.7/Robot 3.2.2/RED/SeleniumLibrary

[ ERROR ] Taking listener ‘C:\Users\AppData\Local\Temp\RobotTempDir17047820544196490621\’ into use failed: Importing listener ‘C:\Users\AppData\Local\Temp\RobotTempDir17047820544196490621\’ failed: ModuleNotFoundError: No module named ‘robot.parsing.populators’
Traceback (most recent call last):
File “C:\Users\AppData\Local\Temp\RobotTempDir17047820544196490621\”, line 72, in
from robot.parsing.populators import READERS

Please suggest.

There was an important code change in Robot Framework 3.2.2 and maybe is that the reason.

You probably need to use Robot Framework 3.1.2, or to see if can be merged with the one from RIDE project (it was originally from there, code made by @mkorpela ), directory src/robotide/contrib/testrunner. I say this, because in RIDE I don’t see that error, even when using Robot 4.0.3.

I changed my robot to 3.1.2 then I started getting below error. I run the
pip install -U --pre robotframework-ride

So you fixed the original problem. Good to know.

Now you have another problem with the version of SeleniumLibrary (it is expecting code from RF 4 API), so probably you need to downgrade SeleniumLibrary.

Which selenium library should I install ?

You should go to the project page and see release notes about compatability.

Or you can do an install, test, repeat until discover good version.

You can see the available versions, for example, with:

pip install -U --force robotframework-seleniumlibrary==?

This should cause an error message, but all the possible versions. Then try to install the older from the current.

1 Like

Finally, my problem resolved when I started using Pycharm Community Edition.
Thanks for your support.