找不到Junit方法

Ank*_*kur 21 java junit

我正在尝试使用junit框架构建一个示例测试类.
我已经下载了junit4.9b3.
当我尝试编译我的测试类时,我收到以下错误: -

javac -cp ".;C:\Documents and Settings\user\Desktop\junit\junit4.9b3\junit-4.9b3.jar"     
TestSubscription.java    
TestSubscription.java:10: cannot find symbol    
symbol  : method assertTrue(boolean)    
location: class TestSubscription    
            assertTrue(s.pricePerMonth()==100.0);        
            ^
TestSubscription.java:17: cannot find symbol    
symbol  : method assertTrue(boolean)    
location: class TestSubscription    
            assertTrue(s.pricePerMonth()==66.67);
            ^
2 errors
Run Code Online (Sandbox Code Playgroud)

看起来assertTrue不可用,但是junit javadoc提到了这个方法.
我正在使用导入如下

import org.junit.*;     
import org.junit.Assert.*;
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

Jon*_*eet 49

您已导入类型,但未使用静态导入来使成员无资格可用.如果您使用:

import static org.junit.Assert.*;
Run Code Online (Sandbox Code Playgroud)

然后,这应该静态导入类中的所有静态方法Assert,因此您可以编写assertTrue而不是Assert.assertTrue.

请注意,大概Assert本身就有嵌套类型,否则我会指望你的"正常"导入失败.


Tho*_*ung 10

你必须进行静态导入.

import static org.junit.Assert.*;
Run Code Online (Sandbox Code Playgroud)