gpt4 book ai didi

java - 使用 Object Fixture 进行 JUnit 测试

转载 作者:行者123 更新时间:2023-11-28 20:58:03 25 4
gpt4 key购买 nike

嘿伙计们,我正在尝试编写一个 JUnit 测试来测试某些东西,但它只是没有点击。我应该设计一个 jUnit 测试器来测试一个类,但使用另一个实现原始类的类作为测试 fixture 。

我应该制作一个通用的圆形数组,它具有一些用于某些事情的方法,例如添加到数组的前面和后面等。我不太确定我是否像你一样正确地实现了数组转换不能转换泛型类型数组,但我们被要求使用有界通配符,所以我认为我实现它的方式没问题....这里没有注释

public class Array12<E> implements LimCapList<E>
{
private int maxSize;
private int first;
private int last;
private int size;
private E[] A12;

@SuppressWarnings("rawtypes")
public Array12(Class <? extends E> clazz, int capacity)
{
this.maxSize = capacity;
this.size = 0;
this.first = 0;
this.last = 0;
@SuppressWarnings({ "unchecked", "unused" })
Array12 A12 = new Array12(clazz, capacity);
}

现在我想要函数做的是创建一个 clazz 类型的圆形数组,大小为 capacity。我是否正确实现了它?我问这个问题的原因是因为当我尝试创建 jUnit 测试器时,我遇到了困难,并且非常困惑我需要做些什么才能让它继续下去。这是我到目前为止对 jUnit 测试器的了解....

public class LimCapListTester extends junit.framework.TestCase
{
private Array12 array12;

protected void setUP()
{
array12 = new Array12(Class<String>, 0);
}

protected void tearDown()
{
array12 = null;
}

问题是, array12 = new Array12(Class, 0);

似乎没有正常工作。而且我不确定我是否只是在 jUnit 测试器中使用了错误的语法,或者我是否错误地编写了 Array12。关于如何修复它的任何提示?

免责声明这是一个家庭作业,所以我不是在寻找解决方案,而是在寻找我在哪里犯了编码错误的提示,也许还有一些关于如何使用不同的测试 fixture 编写 jUnit 测试器的更多见解,因为我有过所有经验到目前为止,正在为特定类编写 jUnit 测试。例如,我编写了一个实现 LinkedLists 的 List12.java,并编写了一个运行良好的 List12Tester.java。但是,在此作业中,我需要编写一个 SomeTester.java 来测试 SomeCode.class,但使用 Array12 实现 SomeCode.class 作为测试 fixture 。

我希望我已经尽可能地解释清楚了,因为我真的很困惑,我确实打算向我的助教寻求帮助,但我想也许有人可以帮助我,这样我问的时候就不会显得太傻了我的助教万一答案真的很明显。 :) 谢谢大家!

最佳答案

提示:检查junit.framework.TestCase方法的签名。覆盖父类(super class)中的方法时,最好使用 @Override

@Override
protected void tearDown() {
array12 = null;
}

如果 tearDown() 不是父类(super class)中的方法,那么编译器会报错。

关于java - 使用 Object Fixture 进行 JUnit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4955341/

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