2

我在网页上运行一些自动化测试时遇到了一些问题。测试用例很简单:导航到登录页面,输入用户名和密码,单击登录,然后对主页中的元素进行断言。

单击“登录”按钮后,问题就开始了。该项目设置如下:

  • java语言
  • 行家项目
  • 黄瓜
  • 网络驱动管理器
  • 宁静
  • 春天
  • 操作系统:Ubuntu 16.04 LTS

我的测试跑步者与@RunWith(CucumberWithSerenity.class)

我有一个 StepsContext :

@ContextConfiguration(classes = SerenityPageConfiguration.class)
@SpringBootTest
public class StepsContext {
}

宁静页面配置如下所示:

@Configuration
@ComponentScan("com.automation")
public class SerenityPageConfiguration {

    @Bean
    LoginPage loginPage() {
        return new LoginPage();
    }

    @Bean
    HomePage homePage() {
        return new HomePage();
    }

和宁静的配置文件:

webdriver {
  driver = chrome
  timeouts.implicitlywait = 5000
}

serenity {
  project.name = My Automation
  outputDirectory  = target/site/reports

  use.unique.browser = false

  browser.height = 1200
  browser.width = 1200
  dry.run = false

  test.root = com.automation

  take.screenshots = FOR_FAILURES
}

我为 webdriver 设置使用通用页面:

private WebDriver webDriver() {
        WebDriverManager.chromedriver().setup();
        ChromeOptions chromeOptions = new ChromeOptions();
        chromeOptions.addArguments("disable-infobars");

        return new ChromeDriver(chromeOptions);
    }

这些步骤是使用页面对象工厂模型组织的。

现在解决手头的问题:通过上述设置,测试单击“登录”按钮后(因此它已经经历了 4 个步骤),控制台读取并且在登录后显示的页面上没有执行任何操作:

INFO 7374 --- [main] org.openqa.selenium.Capabilities :new ChromeOptions()首选使用DesiredCapabilities.chrome()

错误 7374 --- [main] ntcore.webdriver.WebDriverFacade:无法创建新的 WEBDRIVER_DRIVER 实例类 org.openqa.selenium.chrome.ChromeDriver:无法实例化类型为 org.openqa.selenium.chrome.ChromeDriver 的新 WebDriver 实例( chromedriver 驱动程序可执行文件的路径必须由 webdriver.chrome.driver 系统属性设置;有关更多信息,请参阅https://sites.google.com/a/chromium.org/chromedriver/downloads。最新版本可以是从https://sites.google.com/a/chromium.org/chromedriver/downloads下载

...虽然我正在使用 webdriver manager 来获取二进制文件。

如果我从 serenity 配置文件中注释掉以下部分:

webdriver {
  driver = chrome
  timeouts.implicitlywait = 5000
}

单击“登录”后,它会打开 Mozilla Firefox,而无需在其中执行任何操作,控制台显示:

INFO 7886 --- [main] org.openqa.selenium.Capabilities :new FirefoxOptions()首选使用DesiredCapabilities.firefox()

INFO 7886 --- [main] org.openqa.selenium.Capabilities :new FirefoxOptions()首选使用DesiredCapabilities.firefox()

错误 7886 --- [main] ntcore.webdriver.WebDriverFacade:无法创建新的 WEBDRIVER_DRIVER 实例类 org.openqa.selenium.firefox.FirefoxDriver:无法实例化类型为 org.openqa.selenium.firefox.FirefoxDriver 的新 WebDriver 实例( Firefox 启动等待 45 秒超时。

项目中没有提到 Firefox,甚至没有将其标记为系统的默认浏览器。让我知道是否需要有关网页本身的任何其他信息或其他信息,因为我对此一无所知。

谢谢!

4

0 回答 0