在BlueJ的ExceptionUnitTesting工程下创建一个新类TestLargest;在TestLargest中实现上表中的测试用例,对于数组为空的测试用例在BlueJ中执行TestLargest下的所有测试方法,并记录测试的结果。
时间: 2024-05-02 14:17:28 浏览: 6
以下是TestLargest类的代码实现:
```java
import static org.junit.Assert.*;
import org.junit.Test;
public class TestLargest {
@Test
public void testFindLargest1() {
int[] arr = {10, 20, 30, 40, 50};
int result = Largest.findLargest(arr);
assertEquals(50, result);
}
@Test
public void testFindLargest2() {
int[] arr = {5, 12, 8, 3, 9};
int result = Largest.findLargest(arr);
assertEquals(12, result);
}
@Test
public void testFindLargest3() {
int[] arr = {-10, -20, -30, -40, -50};
int result = Largest.findLargest(arr);
assertEquals(-10, result);
}
@Test
public void testFindLargest4() {
int[] arr = {0, 0, 0, 0, 0};
int result = Largest.findLargest(arr);
assertEquals(0, result);
}
@Test
public void testFindLargest5() {
int[] arr = {};
try {
int result = Largest.findLargest(arr);
fail("Expected an IllegalArgumentException to be thrown");
} catch (IllegalArgumentException e) {
assertEquals("Array cannot be empty", e.getMessage());
}
}
@Test
public void testFindLargest6() {
int[] arr = {2, -4, 6, -8, 10};
int result = Largest.findLargest(arr);
assertEquals(10, result);
}
@Test
public void testFindLargest7() {
int[] arr = {1};
int result = Largest.findLargest(arr);
assertEquals(1, result);
}
@Test
public void testFindLargest8() {
int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int result = Largest.findLargest(arr);
assertEquals(10, result);
}
}
```
在BlueJ中执行TestLargest下的所有测试方法,记录测试结果即可。需要注意的是,当测试用例5执行时会抛出IllegalArgumentException异常,这是正常的。我们需要检查异常的消息是否正确。