java - addAll 方法的 jUnit 测试

标签 java unit-testing junit arraylist

对于我的任务,我必须为该方法开发几个 jUnit 测试:

 addAll(int index, Collection c)

此方法是类 ArrayList 的一部分- 内置于 Java。

我想出了如何创建测试并在 Eclipse IDE 中运行它们的方法,但是对于应该如何开发测试我有点困惑。我能得到一个例子,其中包括我应该在 @before 中包含的内容吗? , @beforeClass , @after , @test方法?

为了清楚起见,我了解方法的格式...我只是不了解如何测试此方法。

http://download.oracle.com/javase/1.4.2/docs/api/java/util/ArrayList.html#addAll(java.util.Collection )

最佳答案

因此,您需要测试的是该方法将所有元素插入到传递的 Collection 中,并将它们插入到 ArrayList 中的适当位置。

考虑所有可能的 senerios 并测试每一个。

  1. 从空数组列表开始
  2. 传递空集合
  3. 使用索引 0
  4. 使用索引 > 0
  5. 等等等等......

添加后,验证/断言 ArrayList 现在拥有它应该以正确顺序/位置排列的所有元素。

同时使用@Test(expected=...) 测试错误情况。

  1. 索引 < 0
  2. index > arrayList.size()
  3. 空集合
  4. 提出其他想法

此外... assertThatHamcrest 的 IsIterableContainingInOrder 相结合将有助于验证。

关于java - addAll 方法的 jUnit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7514698/

相关文章:

java - 为什么我没有收到正确的返回消息?

java - 映射具有相同 `JoinColumn` 的两个实体时出现 JPA 映射问题

java - 如何在测试类中的 main 中 stub 函数(java)

spring - 是否可以在类之间缓存 Spring 的应用程序上下文?

java - Mockito 验证字符串集合

java - Apache KafkaServer 从 Java 创建记者

java - 迁移到 Hibernate 4、@Inheritance 和 @GenerateValue 的误解

.net - 多线程单元测试

unit-testing - 使用 jasmine 进行 Angular 2 可观察错误测试

java - 如何从响应对象中获取 myObject