package dpackage;
public class MyCalculator {
public int getSum(int a, int b, int sum) {
sum = a+b;
return sum;
}
}
package dpackage;
import junit.framework.TestCase;
public class MyCalculatorTest extends TestCase {
MyCalculator calc = new MyCalculator();
protected void setUp() throws Exception {
super.setUp();
}
protected void tearDown() throws Exception {
super.tearDown();
}
protected void getSum(){
int a=2;
int b=3;
int sum = a+b;
assertEquals(5, calc.getSum(a, b, sum));
}
}
3 に答える
6
その理由は少し微妙です。コードを以下に変更して、緑色のバーを取得します。
public void testGetSum()
JUnit 3では、テストメソッドはで始まりtest
、public
可能であれば、そのような制限を課さないJunit4に移行することをお勧めします。
@Test
、などのアノテーションを使用する@Before
と@After
、コードがはるかにシンプルで読みやすくなります。
また、メソッドに渡してsum
から再計算するのは冗長に見えます。あなたの方法の中でそれを計算することに固執してくださいgetSum
。
于 2012-10-07T08:11:10.453 に答える
3
名前が「test」で始まるメソッドはありません。MyCalculatorTestクラスで「getSum」メソッドの名前を「testGetSum」に変更できます。
于 2012-10-07T08:11:22.350 に答える
2
この定義のポイントは何ですか?
public int getSum(int a, int b, int sum) {
sum = a+b;
return sum;
}
使用するだけです:
public int getSum(int a, int b) {
return a + b;
}
と
public void testGetSum() { <-- note test in front
int a=2;
int b=3;
assertEquals(5, calc.getSum(a, b));
}
メソッドの前にないeclipseによって報告されるエラーtest
は、テストクラスが検出されないことであることに注意してください。
于 2012-10-07T08:05:05.660 に答える