- Python 3.9 venv
- setuptools==62.1.0 and zc.buildout==3.0.0rc3 installed
This is my minimal buildout to get a robot-server script:
parts += testserver
recipe = zc.recipe.egg
plone.app.robotframework = 2.0.0a6
However if i start the server via:
$ ./bin/robot-server plone.app.testing.layers.PLONE_WSGISERVER -vvvv --debug
16:18:31 [ wait ] Set up plone.testing.zope.WSGIServer
INFO:Zope:Ready to handle requests
16:18:31 [ wait ] Set up plone.app.testing.layers.Plone:WSGIServer
16:18:31 [ ready ] Started Zope robot server
I'm not able to get anything from that instance. respectively I get a 501:
Error code: 501
Message: Unsupported method ('GET').
Error code explanation: HTTPStatus.NOT_IMPLEMENTED - Server does not support this operation.
I tried several other options, like creating my own mixin or use the volto testing layers (./bin/robot-server plone.app.robotframework.testing.VOLTO_ROBOT_TESTING -vvvv --debug). Same result.
It starts up, testing layer seems to get applied as well. But still 501.
Any help is really appreciated
I know I'm using the latest versions of everything and you guys are working hard on plone 6. Maybe somebody hat the same issues or I'm missing something obvious?
Thanks, but I know on which port the service is running. The service itself replies with 501 in the browser and in the logs. I can change the port, but I do get the same result.
the only way for me to run robot tests:
ZSERVER_HOST=127.0.0.1 ZSERVER_PORT=50003 bin/robot-server --reload-path src dev.robotcheck.testing.DEV_ROBOTCHECK_ACCEPTANCE_TESTING
start the Test:
ZSERVER_HOST=127.0.0.1 ZSERVER_PORT=50003 TMPDIR=./tmp bin/robot src/dev/robotcheck/tests/robot/test_example.robot
site note: the TMPDIR is necessary to run the test in Browsers, which are installed via snap in ubuntu. i'am on ubunut 22.04
all other fails, e.g.:
./bin/test --all -m dev.robotcheck -t test_example.robot
TMPDIR=/tmp ./bin/test --all -m dev.robotcheck -t test_example.robot
on MacOS I'm not able to start robot-server ... I get
08:26:28 [ wait ] Starting Zope robot server
08:26:28 [ wait ] Set up plone.testing.zca.LayerCleanup
08:26:28 [ wait ] Set up plone.testing.zope.Startup
08:26:28 [ wait ] Set up plone.app.testing.layers.PloneFixture
08:26:30 [ wait ] Watchdog is watching for changes in src
08:26:30 [ wait ] Fork loop now starting on parent process 91846
08:26:30 [ wait ] Fork loop forked a new child process 91847
08:26:30 [ wait ] Set up plone.app.event.testing.PAEventLayer
08:26:30 [ wait ] Set up plone.app.contenttypes.testing.PloneAppContenttypes
08:26:30 [ wait ] Set up Products.CMFPlone.testing.ProductsCMFPloneLayer
08:26:30 [ wait ] Set up plone.app.robotframework.remote.CMFPloneRobotRemoteLibrary:RobotRemote
08:26:30 [ wait ] Set up plone.testing.zope.WSGIServer
objc: +[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called.
objc: +[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called. We cannot safely call it or ignore it in the fork() child process. Crashing instead. Set a breakpoint on objc_initializeAfterForkError to debug.
08:26:30 [ ERROR ] Forked child process 91847 terminated by signal 6
08:26:31 [ ERROR ] Forked child process died on bootup. Fix possible errors and save edits. We are now paused until we detect the next file change...
when I do
bin/robot-server -v Products.CMFPlone.testing.PRODUCTS_CMFPLONE_ROBOT_TESTING
Does anyone have an idea?
Turns out it was a
Setting ENV var
disable_proxy=1 solved my problem (see Multiprocessing causes Python to crash and gives an error may have been in progress in another thread when fork() was called - Stack Overflow) :
disable_proxy=1 bin/robot-server Products.CMFPlone.testing.PRODUCTS_CMFPLONE_ROBOT_TESTING
My environment: Mac Studio M1 Max with OS 12.4