宠物商店搜索功能的实现与测试
在开发宠物商店系统时,我们已经实现了一个用于检索所有宠物或特定类别宠物的动作类,现在将注意力转向宠物搜索功能的实现。以下是整个实现过程的详细介绍。
1. 搜索功能的初步实现与测试
首先,我们创建一个 Search 动作类,它是一个 WebWork 命令对象,用于封装搜索逻辑。该类需要接受一个查询字符串并返回搜索结果列表。
我们从编写测试开始,以下是测试代码:
public class TestSearch extends TestCase {
public void testSearch() throws Exception {
Search action = new Search();
action.setQuery("dog");
String result = action.execute();
assertEquals(Action.SUCCESS, result);
}
}
然而,这个测试并不充分,它没有真正测试查询是否正确执行以及是否返回了预期的搜索结果。为了确保搜索操作正确执行,有两种方法:
- 允许 Search 类调用 Lucene API 并实际运行查询。
- 不测试 Lucene 搜索逻辑本身,而是测试 Search 类是否正确调用了底层搜索机制的方法,并根据契约返回了预期结果。
我们选择了第二种方法,因为它
超级会员免费看
订阅专栏 解锁全文
60

被折叠的 条评论
为什么被折叠?



