繁体   English   中英

使用对象夹具进行JUnit测试

[英]JUnit Testing with Object Fixture

大家好,我试图编写一个JUnit测试来测试某些东西,但这并不是单击。 我应该设计一个jUnit测试器,它测试一个类,但是使用另一个将原始类实现为测试夹具的类。

我应该制作一个通用的圆形数组,该数组具有某些处理某些事情的方法,例如添加到数组的前面和后面等。我不确定我是否正确实现了Array转换,因为你做不到强制转换泛型类型数组,但是我们被要求使用有界通配符,所以我认为我实现它的方式还可以....

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类型的圆形数组。 我执行正确了吗? 我之所以问是因为,当我尝试创建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不正确。 关于如何修复的任何提示?

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

我希望我能尽我所能,因为我真的很困惑,并且确实计划向我的TA寻求帮助,但我认为也许有人可以帮助我,所以当我问我的TA时,我不会显得太愚蠢案子的答案确实很明显。 :) 多谢你们!

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

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

如果tearDown()不是超类中的方法,则编译器会抱怨。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM