我正在使用maven构建我的包(运行没有问题)然后我尝试为一个类进行Mockito测试。
pom.xml中的依赖关系如下:
<dependencies>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-project</artifactId>
<version>2.0.6</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.9.5</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
模拟测试看起来像这样:
package Person;
import static org.mockito.Mockito.*;
import java.io.IOException;
public class AppTest {
public void test() throws IOException{
PersonManagement mockedPM = mock(PersonManagement.class);
//automatically creates an instance variable of type person
mockedPM.updatePerson("test","test");
//updates this.person
verify(mockedPM).updatePerson("test","test");
}
}
启动mvn包后测试结果显示,没有运行测试(包含测试的文件被找到并被识别,因为当我把语法错误放在那里时,编译器会识别这些)
感谢任何帮助,谢谢
答案 0 :(得分:6)
Mockito不是测试框架。这是一个嘲弄的API。使用JUnit或TestNG。这些是测试框架。两者都只需要将一些注释放在测试方法上。
当然,您的JUnit或TestNG测试将在内部使用Mockito API来模拟依赖项。
答案 1 :(得分:1)
答案 2 :(得分:1)
Mockito是用于模拟对象的框架,而JUnit是用于单元测试的框架。
看起来你正在试验它的工作原理。我建议首先阅读JUnit,当你觉得你可以控制它时,回到模拟的工作方式。
这是JUnit的依赖项:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.6</version>
</dependency>
添加并导入后,您可以使用@Test
注释测试