我正在尝试基于Python获得一个Robot框架。 在测试块的一侧是一个Python模拟器,我已经编写了与之交互的测试库。另一方面,有一个Java库。
关于如何从基于Python的Robot框架中的Java类进行交互,我有以下问题:
选项A:
Robot Framework(基于Python)无缝地包括Python测试库和Java测试库。阅读完机器人文档后,我不相信这是可能的吗?或者也许它可能并且没有明确提到任何地方?我的理解是用户需要Jython才能在Robot框架中包含Java类,但我目前正在使用Python。
选项B:
使用Python测试库并使用JNI和任何可能的选项(py4j,pyjnius,javbridge等)包含Java类。
选项C:
我目前正在Python测试库中使用所需选项(更像CLI)调用Java可执行文件,然后解析日志以匹配相关测试。
最后一个选项正在运作,但我想知道这三者之间的最佳方法。
答案 0 :(得分:1)
要直接使用java编写的关键字,您需要使用jython。
另一种选择是使用remote library interface。您设置了一个小型XML-RPC服务器(在java中),然后通过为robot提供服务器的地址来导入库。
好消息是有人已经编写了一个基于java的服务器。见https://github.com/ombre42/jrobotremoteserver