1
我有我本来以为我可以解决现在的问题...Junit的一套系统,性能测试不工作
我正在写一些简单的测试来打一对夫妇服务...
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = Application.class)
@WebAppConfiguration
public class EndpointTests {
private static Logger log = Logger.getLogger(ApplicationController.class.getName());
@Autowired
private WebApplicationContext context;
private MockMvc mockMvc;
@Mock
private ApplicationController applicationController = new ApplicationController();
static {
System.setProperty("audit.enabled", "false");
}
@BeforeClass
public static void setupProperties() {
System.setProperty("audit.enabled", "false");
}
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mockMvc = MockMvcBuilders.webAppContextSetup(context).build();
}
@Test
public void contextLoads() {}
@Test
public void testGetApplications() throws Exception {
mockMvc.perform(get("/applications/")).andExpect(status().isOk())
.andDo(print())
.andExpect(content().contentType(TestUtils.APPLICATION_JSON_UTF8))
.andExpect(jsonPath("$.[0].name",is("XYZ")));
}
长话短说,我在运行测试时需要禁用此属性。我已经尝试在静态初始化器和@BeforeClass中设置属性,就像我在其他帖子中看到的一样,但是当它进入实际方法时,它仍然是默认的“启用”值,测试失败。我没有使用XML配置,所以更喜欢代码/注释解决方案。
对另一种方式的任何建议,我可以解决这个问题?谢谢。
UPDATE
好像每次我的集成测试运行:
@Test
public void testGetApplications() throws Exception {
mockMvc.perform(get("/applications/")).andExpect(status().isOk())
.andDo(print())
.andExpect(content().contentType(TestUtils.APPLICATION_JSON_UTF8))
.andExpect(jsonPath("$.[0].name",is("paasport-services")));
}
它执行在调用mockMvc.perform我@Configuration类...
@Configuration
public class AppConfiguration
...
...
所以设置我的测试类中的属性值没有好处。 有什么办法可以在我的测试中设置这个属性?我不想真的创建一个单独的测试应用程序上下文,因为它只是一个属性,对于我来说,一切都一直很好。 谢谢。