如何在java中启用断言

时间:2012-07-26 10:07:54

标签: java assert

我正在使用eclipse并收到错误assertArrayEquals(expectedPos,sent.getPosTags()。toArray());没有定义?我已导入

import static org.junit.Assert。*;

idont知道如何修复它吗?

    ArrayList<Range> gotRanges = new ArrayList<Range>();
    Iterables.addAll(gotRanges, sent.getNpChunkRanges());

    assertEquals(expectedLength, sent.getLength());
  • **
  • assertArrayEquals(expectedPos,sent.getPosTags()。toArray());
    1. assertArrayEquals(expectedToks,sent.getTokens()。toArray());

**         assertEquals(expectedRanges,gotRanges);

2 个答案:

答案 0 :(得分:1)

不清楚哪个assertArrayEquals有错,但至少有一个你传入,String []作为第一个参数,Object []作为第二个参数。如果您查看Assert类http://junit.sourceforge.net/javadoc/org/junit/Assert.html的JavaDoc,则没有方法可以获取这两个参数。

检查您传入的变量的类型(我们不能这样做,因为您没有在代码中包含所有定义)

同样如果一个是一个对象数组,一个是一个字符串数组,那就是它们不相等的线索: - )

对于第二位代码,请提及

double[] expectedJane = { 1.0, 1.0, 1.0 };
double[] gotJane = StringFeatures.featureSet.featurizeToDouble("jane");       
assertArrayEquals(expectedJane, gotJane, 0.001); 

你正在调用一个方法assertArrayEquals(double [],double [],double)。看一下javadoc,该方法是否存在?

答案 1 :(得分:0)

你的消息不清楚。

您似乎没有使用assertEquals方法的正确类型。