【发布时间】:2016-01-19 13:19:36
【问题描述】:
我必须编写一些单元测试,现在我有一些,但我决定发布一个主题,因为我不知道测试是否正确,尽管它们在 Eclipse 中运行并且 EclEmma 显示测试涵盖了测试代码(突出显示绿色)。一句话就是单元测试正确。
我将测试的方法
@Service
@Configurable
public class UserManager {
@Autowired
private UserManagerDao umDao;
public long getUserId(String email) throws Exception {
String[] partsOfEmail = email.split("@");
return umDao.getUserId(partsOfEmail [0], partsOfEmail [1]);
}
}
道类
public class UserManagerDao extends JdbcDaoSupport {
@Autowired
private MessageSourceAccessor msa;
public long getUserId(String userName, String domain) throws Exception {
String sql = msa.getMessage("sql.select.user_id");
Object[] params = new Object[] { userName, domain };
List<Long> result = getJdbcTemplate().queryForList(sql, params, Long.class);
if (result.size() > 0) {
return result.get(0);
}
return 0;
}
测试
@RunWith(MockitoJUnitRunner.class)
public class UserManagerTest {
@Mock
UserManagerDao umDao;
private String email = "email@email.com";
@Test
public void testGetPassportUserId() throws Exception {
um.getPassportUserId(email);
}
}
【问题讨论】:
-
你可能想用谷歌搜索
JUnit tutorial。
标签: java unit-testing junit mockito