0

有没有人使用过 RobotFramework 和 Java 远程服务器?

我在让我的 java 关键字与远程服务器一起工作时遇到问题。为了让关键字失败,我抛出了一个异常,这导致机器人失败,但我没有得到我提供的消息以显示在日志中,而是得到了“处理 XML-RPC 返回值失败”消息。

所以我的下一个尝试是尝试使用断言,但这会导致服务器抛出空指针异常。

这是我创建的方法。

Public void filesShouldBeEqual(String path1, String path2){
     File f1 = new File(path1);
     File f2 = new File(path2);
     int value = f1.compareTo(f2);

     if(value > 0 || value < 0){
        Assert.assertFalse("Files are not equal", false);
     } else if (value == 0){
        Assert.assertTrue("Files are equal", true);
     }
 }
4

1 回答 1

0

在 Google Groups 上发布到机器人框架用户组时,您会得到更好的响应。

如果您发布了有关您的原始代码的信息,您在其中引发了导致“处理 XML-RPC 返回值失败”消息的异常,这将有所帮助。

仅供参考,远程服务器的最新版本/更改应该可以更轻松地创建远程库:

https://github.com/ombre42/jrobotremoteserver

对于您的问题的一些背景,有一个可能相关的已知问题列表,例如

http://code.google.com/p/jrobotremoteserver/issues/detail?id=2

并且远程库必须遵循此处提到的一些实施指南:

http://code.google.com/p/jrobotremoteserver/wiki/RemoteServerDetails#Java_remote_library_interface_with_the_generic_remote_server

最后,服务器包含的示例库提供了一个很好的示例,说明如何使用该服务器正确实现 Java 远程库。

您的示例代码可能最好以这种方式实现:

Public static void filesShouldBeEqual(String path1, String path2) throws Exception{
 File f1 = new File(path1);
 File f2 = new File(path2);
 int value = f1.compareTo(f2);

 if(value > 0 || value < 0){
    throw new Exception("Files are not equal");
 }// else if (value == 0)
   //"Files are equal", automatically = pass by the framework after executing keyword
 System.out.println("Files are equal");
}
于 2012-07-25T06:04:53.417 回答