无头Chrome的Spring Boot硒集成测试运行非常缓慢

ren*_*rof 4 selenium spring selenium-chromedriver spring-boot

我有一个Spring Boot Web应用程序和一些与硒一起运行的集成测试。我所有的集成测试都继承自:

BootIntegracaoTest.java

@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT, classes = EaudApplication.class)
@ActiveProfiles(value = "default,teste")
public abstract class BootIntegracaoTest {

    @Autowired public Environment env;

    static {
        System.setProperty("webdriver.chrome.driver",
                SystemUtils.IS_OS_WINDOWS ? "target/test-classes/chromedriver_win32.exe" : "target/test-classes/chromedriver_linux64");

        ChromeOptions options = new ChromeOptions();
        options.addArguments("--headless");
        ChromeDriver driver = new ChromeDriver(options);
        SeleniumQuery.$.driver().use(driver);
        Runtime.getRuntime().addShutdownHook(new Thread(() -> $.driver().quit()));
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我取消--headless参数,则测试将在正常时间运行。毫无头绪的争论,它确实可以运行。

我启用了chromedriver日志,等待某些请求时似乎很慢: [17.289][INFO]: Waiting for pending navigations...

我正在使用Selenium 2.53.1和ChromeDriver:2.32

我也尝试了很多铬标志,但没有成功。如果有人有任何类似的问题可以帮助您,谢谢。

a4a*_*ind 6

这个答案可能为时已晚,但将来可能会对某人有所帮助。

试用以下两个ChromeOptions:

options.addArguments("--proxy-server='direct://'");
options.addArguments("--proxy-bypass-list=*");
Run Code Online (Sandbox Code Playgroud)