我正在尝试为一个Spring Boot应用程序中的控制器编写一个单元测试。应用程序运行平稳,我的问题是运行它的测试。
下面是测试代码:
@RunWith(SpringRunner.class)
@WebMvcTest(MyController.class)
@AutoConfigureTestEntityManager
public class MyControllerTest {
@Autowired
private MockMvc mockMvc;
@Mock
private MyRepository myRepository;
@Mock
ZendeskNotifier zendeskNotifier;
@Mock
ActivityLogger activityLogger;
@Before
public void setUp() throws Exception {
MockitoAnnotations.initMocks(this);
}
@Test
public void cannotSendFooWithoutMessageBody() throws Exception {
this.mockMvc.perform(post("/api/v1/foo/1/send"))
.andDo(print())
.andExpect(status().is4xxClientError())
.andExpect(content().string(containsString("The message body cannot be empty.")));
}
}
当我尝试运行它时,我得到:
***************************
APPLICATION FAILED TO START
***************************
Description:
Field jobEventRepository in foo.bar.util.memsource.svc.MemsourceEventProcessor required a bean named 'entityManagerFactory' that could not be found.
Action:
Consider defining a bean named 'entityManagerFactory' in your configuration.
这对我来说很奇怪,因为我提供了AutoConfigureTestEntityManager
注释,并且希望所有与EntityManager
相关的内容都已经到位。
如果Google将您带到这里,并且您使用的是Spring Boot,那么您可能需要将@datajpatest
添加到您的测试类中。它可以在org.springframework.boot:spring-boot-test-autocigure
中找到。您还可能在重新运行时发现需要声明对org.hibernate:hibernate-validator
的依赖关系。
我正在尝试为 Spring 启动应用程序中的控制器编写单元测试。该应用程序运行顺利,我的问题是运行其测试。 下面是测试代码: 当我尝试运行它时,我会得到: 这对我来说感觉很奇怪,因为我提供了
在使用maven运行单元测试时,我遇到了这个异常。我的所有测试都没有执行。我的测试类的格式是 我正在运行以下命令来运行此命令: 使用的surefire插件是: 有人知道为什么我的测试没有执行吗?我用的是jUnit 4.8.2和surefire 2.14.1
我正在尝试在Windows 8 Professional(64位)笔记本电脑上安装TestCular(使用nmp),但在尝试安装socket.io(作为此过程的一部分)时失败。我得到的错误是 我显然有。NET框架3.5安装(它在控制面板中的添加/删除Windows组件位下检查),尽管我没有设法找到vcbuild.exe.我尝试安装VS2005的旧副本,但这导致了一个关于无效项目的不同错误(. vc
我不熟悉匕首。我创建了一个非常简单的单元测试,试图理解我应该如何使用dagger。不幸的是,它失败了。我可能还不了解匕首的一些基本原理。 而我的测试课失败了 我认为dagger会将B注入A,因为A希望注入B,DaggerModule包含一个@Providers注释方法,该方法创建B。 更新: 我发现当我像这样编写模块类时 将B注入A作品中。然而,我不理解为什么当模块有一个构造a实例的带注释的方法时
问题内容: 有没有办法在单元测试失败时自动启动调试器? 现在,我只是手动使用pdb.set_trace(),但这非常繁琐,因为我需要每次都添加它并在最后将其取出。 例如: 问题答案: 我更正了在异常而不是set_trace上调用post_mortem的代码。
Android Studio 1.1 添加了单元测试支持,详细请看 Unit testing support。本章的其余部分描述的是 “instrumentation tests”。利用 Instrumentation 测试框架可以构建独立的测试 APK 并运行在真实设备(或模拟器)中进行测试。