【发布时间】:2014-06-24 16:30:54
【问题描述】:
我不太了解software testing oracle 的概念。它说:
oracle 是一种用于确定程序是否通过测试的机制。
考虑以下代码:
// class that should be tested
public int sum(int a, int b) {
return a + b;
}
// test class
static Main tester = new Main();
@Test
public void testSum() {
assertEquals("2 + 3 is 5", 5, tester.sum(2, 3));
}
应该测试的类总是返回 2 个整数的总和。
我将 2 和 3 作为参数传递,并期望 5。2 和 3 将被求和并与期望值 (5) 进行比较。在这种情况下,测试成功。
预言机究竟能如何帮助我?这个例子中涉及到预言机吗?
【问题讨论】:
-
我也很想听听这个,因为测试预言机的概念一直让我觉得是一个模糊的概念。我的理解(这可能是错误的,因此我很感兴趣)是测试运行器是测试预言机的一个例子。 (在你的情况下,
tester对象。)
标签: java unit-testing testing junit