假设有一个名为“Students”的数据库表。
Students Table
|---------------|---------------|
| Name | Age |
|---------------|---------------|
| John | 9 |
|---------------|---------------|
| Jane | 7 |
|---------------|---------------|
| Dana | 8 |
|---------------|---------------|
| John | 6 |
|---------------|---------------|
我使用以下命令向数据库发出请求以返回所有名称:
SELECT Name FROM Students
所以结果集将是:
ResultSet rs = {"John" "Jane" "Dana" "John"}
然后我想返回所有唯一值,所以我编写了一个方法来populateSet()
填充 a HashSet setOfNames
。rs
执行后populateSet(ResultSet rs)
,只出现唯一名称:
"John" "Jane" "Dana"
这是验证测试:
public void testValidation() {
// Skipping the test data / db connection / query part
ResultSet rs = ResultSet received back from DB
Set<String> expected = {"John", "Jane", "Dana"};
Set<String> actual = WhateverClass.populateSet(rs);
assertEquals(expected, actual);
}
我可以编写哪些可能的单元测试?
我知道我应该写一个空的、空的和否定的测试。有哪些极端案例?