将HashMap作为FitNesse中的参数传递

时间:2013-11-18 14:34:35

标签: java parameters automated-tests fitnesse fitnesse-slim

我正在尝试将HashMap参数传递给我在Fitnesse中使用的函数。但是,没有任何东西正确传递,因为我在eclipse中进行远程调试时会得到“{}”。

以下是我打电话的方法:

public String issueHttpRequest(String url, Map<String,String> params){
client = new HttpClient();
PostMethod post = createPostMethod(url);
for (Map.Entry<String, String> entry : params.entrySet()){
    post.addParameter(entry.getKey(), entry.getValue());
    }

client.executeMethod(post);
String response = post.getResponseBodyAsString();

return response;
}

以下是我从FitNesse调用它的方式:

!|script|CLASS_NAME|
|check|issueHttpRequest;|login|!{username:"guest",password:"guest"}|{"status":"success"}|

在eclipse中进行远程调试时,params作为空括号传递{}。

任何帮助将不胜感激。提前谢谢。

1 个答案:

答案 0 :(得分:0)

我注意到脚本表前面的!字符可能有问题。尝试不用:

  

|脚本| CLASS_NAME |   !|检查| issueHttpRequest; |登录| {用户名: “客人”,密码为: “客串”} | { “地位”: “成功”} |

检查SLIM MarkupHashTable DataType以供参考。

我只尝试过map参数可以在脚本表中进行SLIM测试。因此,如果我提出的仍然可行的解决方法确实有效,请确保在测试之前已经定义了这个:

  

!限定   TEST_SYSTEM {slim}