在编写测试自动化时,我需要利用开发人员提供的 api,这些 api 接受 HashMap 作为参数。测试代码涉及到调用几个这样的api,以hashmap为参数,如下所示。
Map<String,String> testMap = new HashMap<String,String>();
setName()
{
testMap.put("firstName","James");
testMap.put("lastName","Bond");
String fullName=devApi1.submitMap(testMap);
testMap.put("realName",fullName);
}
setAddress()
{
testMap.put("city","London");
testMap.put("country","Britain");
testMap.put("studio","Hollywood");
testMap.put("firstName","");
testMap.put("person",myMap.get("realName"));
devApi2.submitMap(testMap);
}
然而,要求是在 setName 和 setAddress 函数中打印 testMap,但映射应该只打印在相应函数中设置的交替行中的那些元素(键值对)。我的意思是 setName 应该打印在调用 submitMap api 之前设置的 Map 中的 2 个元素,同样 setAddress 应该打印在调用 submitMap 之前设置的 5 个元素。
setName 输出必须是:
The data used for firstName is James.
The data used for lastName is Bond
setAddress 输出必须是:
The data used for city is London.
The data used for country is Britain.
The data used for studio is Hollywood.
The data used for firstName is null.
The data used for person is James Bond
任何帮助,以实现这一目标?