>

어떤 이유로 테스트 클래스의 setUp () 메소드가 테스트 메소드 전에 호출되지 않습니다.

import static org.junit.jupiter.api.Assertions.*;
import org.junit.After;
import org.junit.Before;
import org.junit.jupiter.api.Test;
class BlockchainAuctionTest {
    private BlockchainAuction auction;
@Before
public void setUp() {
    auction = new BlockchainAuction();
    System.out.println("setUp");
}
@After
public void tearDown() {
    System.out.println("tearDown");
}
@Test
void testOneBid() {
    Bid bid = new Bid("Bitcoin", "Devon", 1.0);
    assertTrue(auction.recordNewBid(bid), "first bid should be added without error");
}
}

구체적으로 줄에 널 포인터 예외가 발생합니다

assertTrue(auction.recordNewBid(bid), "first bid should be added without error");

경매가 초기화되지 않았기 때문에. Eclipse를 사용하고 있습니다.


  • 답변 # 1

    JUnit 5를 사용하고 있습니다.  그러나 JUnit 4 @Test / @Before .

    @After 를 사용해야합니다 / @BeforeEach   @AfterEach 에서 .

  • 답변 # 2

    다음과 같은 방식으로 가져 오기를 시도해 볼 수 있습니다

    org.junit.jupiter
    
    

    to

    import org.junit.jupiter.api.Test;
    
    
    import org.junit.Test;

관련 자료

  • 이전 youtube dl front end Video Download - youtube-dl 프론트 엔드 비디오 다운로드 - 파이썬과 플라스크를 사용합니까?
  • 다음 파이썬에서 두 혼합 문자열 사이에 가능한 모든 증분 값을 얻는 방법은 무엇입니까?