web-dev-qa-db-ja.com

新しいChromeOptions() `は、` DesiredCapabilities.chrome()よりも優先されます

Java Test Automationです。テストを実行すると、以下のメッセージが表示されます。何が問題なのですか?今はありがとうございました。

メッセージ:org.openqa.Selenium.remote.DesiredCapabilities chrome

情報:new ChromeOptions()の使用はDesiredCapabilities.chrome()よりも優先されますChromeDriver 2.44.609538(b655c5a60b0b544917107a59d4153d4bf78e1b90)をポート33954で開始ローカル接続のみが許可されます.

Java File
import org.junit.Test;
import org.openqa.Selenium.chrome.ChromeDriver;
import org.openqa.Selenium.chrome.ChromeOptions;

public class TestCase {
    @Test
    public void doTestCase(){
        System.setProperty("webdriver.chrome.driver","D:\\Drivers\\Chrome Driver\\chromedriver\\chromedriver.exe");
        ChromeOptions options = new ChromeOptions();
        options.addArguments("start-maximized");
        ChromeDriver driver = new ChromeDriver(options);
        driver.get("https://www.google.com/");
    }
}

Maven File
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.Apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.Apache.org/POM/4.0.0 http://maven.Apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.alkan.testautomation</groupId>
    <artifactId>JavaTestAutomaiton</artifactId>
    <version>1.0-SNAPSHOT</version>
<dependencies>
    <!-- https://mvnrepository.com/artifact/junit/junit -->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.Selenium</groupId>
        <artifactId>Selenium-Java</artifactId>
        <version>3.141.59</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.Selenium</groupId>
        <artifactId>Selenium-chrome-driver</artifactId>
        <version>2.44.0</version>
    </dependency>
</dependencies>
</project>
3
Alkan Ulutas

次のように変更する必要があります-

ChromeOptions cap = new ChromeOptions(); 
cap.setCapability(CapabilityType.UNEXPECTED_ALERT_BEHAVIOUR,
                  UnexpectedAlertBehaviour.IGNORE);

driver = new RemoteWebDriver(new URL("http://hub:4444/wd/hub"),cap);

それは問題を修正し、実行中にそのログに遭遇することはありません

1
Sobhit Sharma

メッセージとして取得するINFOは、DesiredCapabilitiesを使用した可能性があるためです。 ChromeOptionsを使用する場合、INFOを取得してはならないためです。 DesiredCapabilities.clasに含まれる内容を確認します。

public static DesiredCapabilities chrome() {
    LOG.info("Using `new ChromeOptions()` is preferred to `DesiredCapabilities.chrome()`");
    return new DesiredCapabilities("chrome", "", Platform.ANY);
}

DesiredCapabilitiesクラスの使用は、Python、Rubyなどでサポートされています。Javaでも使用できますが、Javaでの使用は非推奨です。

代わりに、ChromeOptionsクラスを使用できます。これは、Java、Pythonなどでサポートされています。

参照: https://chromedriver.chromium.org/capabilities