1

有人可以帮我吗?我正在使用 Java 使用 Selenide 框架。Selenide 有打开浏览器的方法。看起来像: Selenide.open("http://www.google.com");

默认情况下,它使用 FireFox。要使用 Chrome,我需要设置系统属性,例如:

   @BeforeTest
    public void beforeTest() {
        Configuration.timeout=5000;
        System.setProperty("webdriver.chrome.driver", "chromedriver");
    }

我的默认项目文件夹中的 Chromedriver。我做错了什么?

4

10 回答 10

2

您没有定义 Configuration.browser 参数的值。默认情况下,selenide 将启动 firefox 浏览器。为了启动 chrome,您应该添加以下行 Configuration.browser = "chrome";

以下代码应该适合您。

@BeforeTest
    public void beforeTest() {

System.setProperty("webdriver.chrome.driver", "chromedriver");
Configuration.browser = "chrome";
Configuration.timeout=5000;


    }
于 2018-01-12T08:53:23.977 回答
2

您可以对 chrome 浏览器使用如下 selenide 配置

Configuration.browser = "chrome";

您可以查看此帖子以获取更多详细信息

于 2017-12-07T21:02:07.547 回答
2

你只需要这样做:

@Before
public void setUp ()
{
    System.setProperty("webdriver.chrome.driver", "D:/chromedriver.exe");
    Configuration.browser = "chrome";
    open ("your link here");
}
于 2017-05-26T12:13:03.873 回答
1
@BeforeTest
public void setUp ()
{
    System.setProperty("webdriver.chrome.driver", "chromedriver exe file path");
    Configuration.timeout=5000;
    Configuration.browser = "chrome";
    open ("https://www.google.com");
}
于 2017-11-22T05:21:57.533 回答
0

如果驱动程序在您的项目文件夹中,您可以编写:

  System.setProperty("webdriver.chrome.driver", "src\\packages\\to\\driver\\between\\src\\and\\driver's\\folder\\chromedriver.exe");
于 2017-11-24T12:15:40.593 回答
0

为了简化您使用浏览器驱动程序的所有工作,只需将webdrivermanager依赖项添加到您的pom.xml(对于 Maven)或build.gradle(对于 Gradle)。然后加

ChromeDriverManager.getInstance().setup();
Configuration.browser = "chrome";

作为测试的先决条件,它们将在 Chrome 中运行。您无需下载任何文件。您可以通过将值更改为其名称(例如“firefox”)来使用其他浏览器。

于 2018-01-11T12:30:35.280 回答
0
String chromeDriverPath = "/path/to/chromedriver.exe";
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
ChromeDriverService Service = Builder
    .usingAnyFreePort()
    .withLogFile(new File("./chromdriver.log"))
    .usingDriverExecutable(new File(chromeDriverPath))
    .build();
CommandExecutor commandExecutor = new DriverCommandExecutor(Service);
RemoteWebDriver driver = new RemoteWebDriver(commandExecutor, capabilities);
WebDriverRunner.setWebDriver(driver); //Set driver that Selenide should use

为什么你应该使用 Chrome 服务阅读这里:http ://www.qaautomationsimplified.com/selenium/run-chromedriver-with-chrome-driver-service-to-reduce-script-execution-time-significantly/

于 2017-06-30T12:58:44.170 回答
0

在我这样工作

  @BeforeClass
  public void baseSetUp() {
                File file = new File("/path/to/chromedriver.exe");
                System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());
                driver = new ChromeDriver();
                WebDriverRunner.setWebDriver(driver);}
于 2018-02-12T10:06:17.830 回答
0

这个 GitHub wiki 页面中,有一个关于 Selenide 如何创建 WebDriver 的很好的解释。

如“如何使用其他浏览器运行 Selenide ”一节中所述,您应该通过调用来设置驱动程序

System.setProperty("webdriver.chrome.driver", "/path/to/your/chrome/driver");
WebDriver driver = new ChromeDriver();

你可以看看这个 SO question来检索一些额外的信息。

于 2017-01-24T14:47:01.043 回答
0

只需将扩展名 *.exe 添加到文件名中,即可获得完整的文件名及其扩展名。我通常也会在文件名中添加完整路径。当我为 jmeter 配置 webdriver 采样器时,我遇到了这个问题。而且我必须在采样器设置中提供 chromedriver 的完整路径。后来证明这种方法也适用于硒化物。关于我所提到的更多细节可以在这里找到 -如何使用 Selenium 和 webdriver,也许这将是您任务的有用解决方案。

于 2017-02-10T13:42:31.423 回答