2016-09-20 12 views
0

dataProvider를 사용하여 testNg에서 매개 변수화 된 테스트를 실행하려고합니다. 그러나 어쨌든 항상 그 테스트 케이스를 무시하고 있습니다. 다음은 참조 코드입니다.testNg는 dataProvider를 사용하여 매개 변수화 된 테스트를 무시합니다. 메이븐 (Maven) | IntelliJ

@DataProvider(name = "test") 
public Object[][] testDP() throws Exception { 
    Object[][] arrayObject = getExcelData("TestData.xlsx", "TestData", "testName"); 
    return arrayObject; 
} 


@Test(dataProvider = "test", groups = {"sanity"}) 
public void testMethod(String testName, String logisticsHandler) { 
    System.out.print(testName + "\n"); 
    setUpdateLogisticsHandler(logisticsHandler); 
    updateLogisticsHandler(context.getAuthToken(),context.getQuoteIdForRfq()); 

} 
+0

arrayObject 내용의 샘플을 제공해 주시겠습니까? – juherr

+0

'TESTNAME \t logisticsHandler logistics_OFB \t OFB logistics_ 공급 업체 \t 공급 업체 logistics_BUYER \t BUYER' – iamvroon

+0

당신이'getExcelData'를 건너 뛰고 잠시 정적 배열로 교체하면? 시험을 어떻게합니까? 사용한 명령과 확실한 구성은 무엇입니까? – juherr

답변

0

테스트에 데이터를 보내는 데는 두 가지 방법이 있습니다.

  1. 정적 배열 사용 - 당신이 다음 Excel에서 당신이 @Test 기능과 같이 행/필드의 정확히 같은 번호가 있어야 데이터를 얻기 위해 엑셀을 사용하는 경우 줄리앙 헤르
  2. 에 의해 제안.

예 : String testName, String logisticsHandler는 @test 함수에서 두 개의 필드이고 ObjectArray에 필수 필드 인 testdata가있는 두 개의 행만 있어야합니다.

Apache POI를 사용하여 매우 쉽게 처리 할 수 ​​있습니다.

+0

감사의 제사 ... 그것을 시도 할 것이다. 또한 testNG의 dataProvider를 사용하는 동안 testNG와 Maven을 함께 사용하여 문제가 있다는 기사를 읽었습니다. 그걸 알아 내려고 노력할거야. 어쨌든 고마워. – iamvroon