好的,这是发生了什么事。我正在尝试为我设置的Library类设置测试代码。现在,我应该调整我的构造函数,以便在添加新构造函数之前自动在我的数组列表中创建一个条目。这里是我的构造函数:数组列表:构造函数中的默认条目?
public DvrLibrary()
{
recordings = new ArrayList <DvrRecording>();
DvrRecording initialRecording = new DvrRecording();
initialRecording.setTitle("Family Guy");
initialRecording.setStartTime("10:00pm");
for (int i = 0; i < 3; ++i) { initialRecording.increaseTime(); }
recordings.add(initialRecording);
}
当我创造了我的测试情况下,我有测试代码:
public void testARecording()
{
DvrLibrary testLibrary = new DvrLibrary();
ArrayList <DvrRecording> testList = new ArrayList <DvrRecording>();
DvrRecording testRecording = new DvrRecording();
testRecording.setTitle("Lost");
testRecording.setStartTime("Later");
for (int i = 0; i < 3; ++i) { testRecording.increaseTime(); }
testLibrary.addRecording(testRecording);
testList.add(testRecording);
assertEquals(testLibrary.getRecordings(), testList);
}
我的问题是,当我运行的实际测试中,默认情况下,我敢当然,没有被调用。它正在返回一条失败的错误消息,告诉我它期望找到两个条目,但只找到一条。我尝试删除测试代码创建的新条目,并读取了应该有一个的错误,但没有发现任何错误。
这使我相信我在实际代码中设置构造函数的方式有些问题,但我不能为我的生活弄清楚我搞砸了什么。当我去寻求帮助时,我和他聊过的那个人好像我不确定有什么不对,但你可能会搞砸这个断言。但我不知道什么是错的?
任何人有任何输入?我真的很感激它。谢谢!
发布确切的错误消息,您正在获取。 – kosa 2012-03-01 21:29:43
我有点困惑。如果你在你的testLibrary中添加“family guy”,并且你在testList中添加了“lost”,你为什么期望这两个列表是相同的?假设junit ... – stevevls 2012-03-01 21:30:02