Selenium尝试在几个步骤后启动新驱动程序

时间:2018-04-05 12:14:12

标签: java selenium selenium-chromedriver cucumber-serenity

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

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

  • java语言
  • maven project
  • 黄瓜
  • webdriver manager
  • 平静
  • 弹簧
  • 操作系统:Ubuntu 16.04 LTS

我的测试运行器使用@RunWith(CucumberWithSerenity.class)

运行

我有一个StepsContext:

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

andrenity页面配置如下所示:

@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()

     

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

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

如果我从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()

     

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

项目中没有提到Firefox,甚至没有将其标记为系统的默认浏览器。 如果有关于网页本身或其他内容的任何其他信息,请告诉我,因为我对此没有想法。

谢谢!

0 个答案:

没有答案