Robot Framework 进程库:此 Python 版本不支持终止进程
我在使用 robot framework 2.8.4 进行测试,配合 maven(robotframework-maven-plugin:1.4.1)。我需要用到 Process 库来启动和结束进程。启动进程没问题,但结束进程时却出现了“这个 Python 版本不支持结束进程”的错误。
查看 Process.py 的源代码,似乎是因为某种“属性错误”,但我没法进一步了解具体情况。
如果我用 pybot (Robot Framework 2.8.4 (Python 2.7.3 on linux2))
运行同样的测试,就能正常工作。
但是如果我用 java -jar robotframework-2.8.4.jar
(就像 maven 插件那样),在 java 7 OpenJDK 下运行,就会出现这个错误。
有没有什么线索呢?谢谢……
1 个回答
1
根据库的源代码中的注释,terminate_process这个方法在Jython中是不支持的:“不幸的是,至少Jython 2.7的测试版似乎也不支持这个功能。”而当你使用RobotFramework的jar文件启动时,实际上是用Jython在运行,所以就会遇到这个问题。而如果你用Pybot启动,那就是用你正常的Python,所以就能正常工作。