如何在基于Python的机器人框架中包含Java测试库

问题描述:

我正在尝试基于Python获取一个Robot框架。 在测试块框的一侧是一个Python模拟器,我已经编写了测试库来与之交互。另一方面有一个Java库。如何在基于Python的机器人框架中包含Java测试库

我对如何使用Java类从基于Python的机器人框架内进行交互以下问题:

  • 选项A:
    机器人框架(基于Python)的包括了Python测试库和Java测试库无缝地。阅读完Robot文档后,我不相信这是可能的?或者也许这是可能的,并且在任何地方都没有清楚提及?我的理解是用户需要Jython,以便将Java类包含在Robot框架中,但我目前正在使用Python。

  • 选项B:
    使用Python测试库和包括使用JNI和Java类的任何可能的选项(py4j,pyjnius,javbridge等)。

  • 选项C:
    我目前调用Java和Python测试库所需选项(更像是一个CLI),然后分析这些日志以匹配有问题的测试中可执行文件。

最后一个选项正在工作,但我想知道这三者之间的最佳方法。

+1

选项A:是的,您一定要使用jython。 –

要直接使用用java编写的关键字,您需要使用jython。其他选项是使用remote library interface。你建立一个小型的XML-RPC服务器(在java中),然后通过给机器人提供服务器的地址来导入库。

好消息是有人已经写了一个基于java的服务器。请参阅https://github.com/ombre42/jrobotremoteserver