我已经编写了单个测试用例,但我不知道我是否正确行事。如果你有更好的选择,请建议我。请帮我写测试套件。
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath*:WEB-INF/spring/appServlet/servlet-context.xml" })
public class TestHelper {
@Mock
private UserDaoImpl userDaoImpl;
@InjectMocks
private Helper helper;
private MockMvc mockMvc;
String msg = "Success";
int status = 200;
ResponseMessage message = new ResponseMessage();
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
this.mockMvc = MockMvcBuilders.standaloneSetup(helper).build();
}
@Test
public void testsavetoken() throws Exception {
Token token = new Token();
token.setAccessToken("ya29.WgJ2glWhvEfcP-YE0ndPlZY3NDXGGpoK5Zp4-l2qlCKkepLjQDHKO68dfopGjvhkM_QY");
token.setAuthToken("ya29.WgJ2glWhvEfcP-YE0ndPlZY3NDXGGpoK5Zp4-l2qlCKkepLjQDHKO68dfopGjvhkM_QY");
token.setSessionId("ya29.WgJ2glWhvEfcP-YE0ndPlZY3NDXGGpoK5Zp4-l2qlCKkepLjQDHKO68dfopGjvhkM_QY");
token.setUuid("test1");
when(userDaoImpl.saveToken(any(Token.class))).thenAnswer(new Answer() {
@Override
public Token answer(InvocationOnMock invocation) throws Throwable {
Token token1 = (Token) invocation
.getArguments()[0];
token1.setUuid("hhhhh");
return token1;
}
});
message = helper.registerToken(token);
assertNotNull(message);
Assert.assertEquals(status, message.getStatus());
Assert.assertEquals(msg, message.getMessage());
}
}
但是现在我很高兴能够编写测试套件,因此我无法添加更多测试用例!
答案 0 :(得分:0)
查看这套很好的教程,其中包括spring MVC测试
基本上,有两个级别的控制器测试:
单元测试
您可以单独测试控制器,不要将系统作为一个整体进行测试。直接关注控制器登录,而不是与其他组件的交互。
请参阅Unit Testing of Spring MVC Controllers: Configuration
集成测试
您测试控制器与系统其他部分的交互,系统作为一个整体进行测试。即使对每个组件进行隔离单元测试也是成功的,集成测试可能会发现错误。
请参阅Integration Testing of Spring MVC Applications: Configuration