我的问题围绕如何从主Junit测试类调用我存储在另一个方法中的HashMap数据。
@Test
public void pciTest() throws Exception {
HashMap<String, String> examples = new HashMap<String, String>();
examples.put(pciTestData());
//Remaining testing code below
}
//Storing Data Here
public HashMap<String,String> pciTestData() {
HashMap<String, String> examples = new HashMap<String, String>();
public static HashMap<String, String> getExamples() {
return examples;
}
examples.put("credit card", "4929028573388403\n" +
"4024007140713941\n" +
"4528684534391095\n" +
"5188872375900391\n" +
"5449835900541183\n" +
"5525878422452056\n");
//more data below
}
我想从pciTestData()获取数据并将其放在pciTest()中的HashMap示例中,如examples.put(pciTestData())部分所示。
getExamples()方法是一种占位符,因为我正在测试各种方法,不确定是否需要它。
我已经尝试了pciTestData()。get.keySet()但是返回了一个错误。
答案 0 :(得分:0)
只需examples.putAll(pciTestData()),
代替examples.put(pciTestData())
。
或者,因为在从pciTestData获取数据之前,您似乎没有在pickets的示例中添加任何内容,所以您可以examples = pciTestData().
getExamples()
方法没有用(如果我正确地读取代码,在另一个方法中声明静态方法也很奇怪。)
答案 1 :(得分:0)
你想要达到什么目标?
根据我的理解,我想您要复制测试变量pciTestData()
中examples
方法返回的结果地图?
如果要复制地图的内容,可以使用Map#putAll((Map<? extends K,? extends V> m)
:
examples.putAll(pciTestData());
如果你只是想从另一个方法(这里是测试方法)访问你的方法结果,你只需要实例化你的变量,就像任何其他方法一样:
examples = pciTestData();