gpt4 book ai didi

java - 如何使用列表实现深度优先遍历测试?

转载 作者:行者123 更新时间:2023-12-05 01:07:08 24 4
gpt4 key购买 nike

我正在尝试测试我的 DepthFirstTraversal。只是,我将如何根据我为其编写的代码对其进行测试。

这是我正在使用的方法,(add 方法来自它所扩展的另一个类,而 traverse 方法是从另一个类实现的):

public class DepthFirstTraversal  {
private List traversal = new ArrayList();

这就是我尝试使用 List 对其进行测试的方式,因为这是我在深度优先遍历类中声明的内容:

@Test
void willItDepthFirst(){
DepthFirstTraversal b = new DepthFirstTraversal();
b.add(1);//add node
b.add(0);
b.add(2);
b.add(3);
b.add(4);
b.add(0,1);//connect nodes with edges
b.add(1,2);
b.add(2,3);
b.add(0,4);

b.traverse();
List<Integer> c= Arrays.asList(0,1,4,2,3);

assertEquals(c,b);
}

但是这是我遇到的错误。 :

org.opentest4j.AssertionFailedError: 
Expected :[0, 1, 4, 2, 3]
Actual :graph.DepthFirstTraversal@6536e911

编辑:删除了不必要的方法

最佳答案

如评论中所述,您需要检查 traverse() 方法的返回值,而不是对象本身:

List<Integer> result = b.traverse();
List<Integer> expected = Arrays.asList(0,1,4,2,3);

assertEquals(expected, result);

关于java - 如何使用列表实现深度优先遍历测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59602079/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com