SpringMVCテスト@Test
5177 ワード
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({"classpath*:applicationContext.xml"})
public class SpringTestUser {
private static final Logger logger = LoggerFactory.getLogger(SpringTestUser.class);
@Resource
private UserDAO userDao;
@Test
public void testGetUserById() {
Integer userId = 1;
User user = userDao.getUserById(userId);
logger.info(" : " + user.getName());
}
}
注意ラベル@RunWith(SpringJUnit 4 ClassRunner.class)は、このコードが実用的かJUnitがテストした@ContextConfiguration({「classpath*:applicationContext.xml」)がラベル形式でプロファイルのロードを完了することを意味します.
import static org.Junit.Assert.assertEquals;
import org.Junit.Test;
import org.Junit.runner.RunWith;
import org.Springframework.beans.factory.annotation.Autowired;
import org.Springframework.test.context.ContextConfiguration;
import org.Springframework.test.context.Junit4.SpringJUnit4ClassRunner;
import org.Springframework.transaction.annotation.Transactional;
import domain.Account;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("/config/Spring-db1.xml")
@Transactional
public class AccountServiceTest1 {
@Autowired
private AccountService service;
@Test
public void testGetAcccountById() {
Account acct = Account.getAccount(1, "user01", 18, "M");
service.insertIfNotExist(acct);
Account acct2 = service.getAccountById(1);
assertEquals(acct,acct2);
}
}
小結
Spring環境でユニットテストを行う場合は、@Testコメントラベルと関連するクラスとメソッドの定義を含むJunit 4テストフレームワークを引き続き使用するように構成できます.
また、次の必要はありません.