0

[Maven없이] 내 webdrivermanager-1.7.2.jar를 사용하여 chromedriver에 대한 바이너리 다운로드를 자동화하고 있지만 "java.lang.NoClassDefFoundError : org/slf4j/LoggerFactory"메시지. 내 코드 : 다른 사람의 사이에서 (전체 목록에 대한 pom.xml 참조)webdrivermanager-xxxjar (Maven없이)

package selenium_webdriver_api; 
import java.util.concurrent.TimeUnit; 

import org.junit.After; 
import org.junit.Before; 
import org.junit.BeforeClass; 
import org.junit.Test; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.chrome.ChromeDriver; 

import io.github.bonigarcia.wdm.ChromeDriverManager; 

public class Topic_29_ManageBrowserVersion { 

    private WebDriver driver; 

    @BeforeClass 
    public static void setupClass() { 
     ChromeDriverManager.getInstance().version("2.33").setup(); 
     // Or: ChromeDriverManager.getInstance().setup(); 
    } 

    @Before 
    public void setupTest() { 
     driver = new ChromeDriver(); 
    } 

    @After 
    public void teardown() { 
     if (driver != null) { 
      driver.quit(); 
     } 
    } 

    @Test 
    public void test() { 
     driver.get("https://github.com/bonigarcia/webdrivermanager"); 
     driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS); 
     driver.manage().window().maximize(); 
    } 
} 
+0

slf4.jar를 다운로드하고 classpath에 추가하십시오 ... 이것에 대한 의존성을 확인하십시오 - http://central.maven.org/maven2/io/github/bonigarcia/webdrivermanager/2.0.0/webdrivermanager- 2.0.0.pom. – Grasshopper

답변

3

WebDriverManager이 같은 slf4j-api, commons-io, gson 같은 여러 라이브러리에 따라 달라집니다. 빌드 도구 (예 : Maven, Gradle)를 사용하지 않고 WebDriverManager를 사용하는 경우 이러한 종속성을 수동으로 해결해야합니다. 다른 옵션은 예를 들어 maven-assembly-plugin (정보 here) 또는 maven-shade-plugin (정보 here)을 사용하여 소스에서 팻 항아리를 생성하는 것입니다.

+0

안녕하세요 @ 보니 가르시아, 잘 작동합니다. 그래서 질문이 더 많습니다. TestNG 프레임 워크에서 webdrivermanager를 사용할 수 있습니까? –

+0

@ BoniGarcía 여기 당신을 만나서 반가워요 선생님. – DebanjanB

+0

예, WebDriverManager는 TestNG 또는 다른 테스트 프레임 워크와 함께 항상 Selenium WebDriver와 함께 사용할 수 있습니다. –