我正在使用MockitoJUnit库测试我的控制器。有些变量声明为:
@Value("${mine.port}")
private Integer port;
当我运行测试时,它找不到我的值。资源文件夹中的端口作为属性文件。我的控制器运行没有问题,但是当我运行我的controller junit测试时,端口号是空的。
我在课堂上使用了以下注释:
@RunWith(MockitoJUnitRunner.class)
@ContextConfiguration(classes = myControl.class)
@WebAppConfiguration
@AutoConfigureMockMvc
我在jUnit测试中使用了下面的方法
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mockMvc = MockMvcBuilders
.standaloneSetup(myController)
.build();
}
@Test
public void getName() throws Exception {
MockHttpServletRequestBuilder request =
MockMvcRequestBuilders.get("/service")
.contentType(MediaType.APPLICATION_JSON_VALUE);
MvcResult result = mockMvc.perform(request)
.andExpect(status().isOk()).andReturn(); }
我很困惑,有人知道我是否错过了一些设置吗?谢谢!
没有一个指定的注释将启动Spring容器:
@RunWith(MockitoJUnitRunner.class)
@ContextConfiguration(classes = myControl.class)
@WebAppConfiguration
@AutoConfigureMockMvc
要编写专注于控制器的测试片,请不要使用Mockito运行程序:@RunBy(MockitoJUnitRunner.class)
,否则您无法启动Spring容器。MockitoJUnitRunner
用于单元测试,而不是集成测试。
要知道何时以及如何使用Spring Boot编写单元和集成测试,您可以阅读这个问题。
而不是将@WebMvcTest
注释与Spring runner一起使用,例如:
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@WebMvcTest
public class WebLayerTest {
...
}
你可以依靠这个Spring指南来了解更多细节。
我已经将我的项目上传到githttps://github.com/gitekiras/spring-boot-gradle-mvc 我不能得到正确的是,我不能加载css和js从资源文件夹。 当我把它放在webapp文件夹,我能够得到每件事情的工作,但根据教程,我应该把它们放在资源的静态文件夹。 但是当我这样做的时候,我不能加载页面上的css和js。 谁能说出我错过了什么? 另外:当我在浏览器日志中
我试图使用位于src/test/resources下的文件进行单元测试,但当我试图读取它时,我不能总是获得空指针。 我使用Spring Boot 2.0.2,JDK 10和Gradle。 我尝试了谷歌搜索问题时发现的许多代码变体,但没有成功。 我的身材。gradle看起来像这样: 我的测试是这些测试的一些变体(我尝试过的任何测试都没有成功): 测试课程如下: src\test\java\com\m
Spring靴-1.4.1;IDE-IntelliJ 2016.3。EAP 我试图加载资源如下; 和 当我从IDE运行应用程序时,这两种方法都可以正常工作,但当我尝试将应用程序构建为war并将其部署到Tomcat上时,这两种方法都不起作用。 有人能帮我解决这个问题吗? 谢谢
问题内容: 我的项目具有以下结构: 我有一个文件,我想从单元测试中加载文件 我有此代码不起作用。它抱怨“没有这样的文件或目录”。 我也试过了 这也不起作用。它返回。我正在使用Maven构建我的项目。 问题答案: 尝试下一个: 如果上述方法不起作用,则已在以下类中添加了各种项目:1(代码在此处)。 以下是有关如何使用该类的一些示例:
传统方式的导入外部JS和CSS文件的方法是直接在模板文件使用: <script type='text/javascript' src='/static/js/common.js'> <link rel="stylesheet" type="text/css" href="/static/css/style.css" /> 系统提供了专门的标签来简化上面的导入: {load href="/stati
我在maven项目的src/main/resource文件夹中下载了.sh文件,我正在通过下面的代码阅读它 如果我使用jar EX作为应用程序运行:- java-jar runscript.jar SCHEMA_NAME /users/ideaprojects/runscript/target/file:/users/ideaprojects/runscript/target/runscripts