黄瓜自动测试无法通过Jenkins找到元素

时间:2018-06-13 07:53:21

标签: java selenium jenkins cucumber autotest

当我通过远程主机上的jenkins运行时,

我对Cucumber的java测试有问题。

我的代码:

步骤:

给出属性“bla-blalink”的开放链接 并输入名称为“UserName”的输入:“LoginPage”上的“login”

元素:

@NameOfElement("UserName")
    @FindBy(id = "UserName")
    public SelenideElement username;

step def:

@And("^type to input with name \"([^\"]*)\" property: \"([^\"]*)\" on \"([^\"]*)\"$")
public void typeToInputWithNamePropertyOn(String nameOfElement, String property, String page) throws InterruptedException, IOException {
    sleep(5000);
    Properties properties = new Properties();
    try (FileReader fileReader = new FileReader(Constants.PROPERTY_PATH)) {
        properties.load(fileReader);
    }
    if ("LoginPage".equals(page)) {
        loginPage.get(nameOfElement).sendKeys(properties.getProperty(property));
    } else if ("MainPage".equals(page)) {
        mainPage.get(nameOfElement).sendKeys(properties.getProperty(property));
    } else if ("ActionPage".equals(page)) {
        actionPage.get(nameOfElement).sendKeys(properties.getProperty(property));
    }
}

配置:

@BeforeClass
    static public void setupTimeout() {

        /////////////////////////////////for remote runs////////////////////////////////
        //        Configuration.remote = "http://10.52.185.105:4419/wd/hub";
        //        Configuration.browser = "chrome";
        //        DesiredCapabilities capabilities = new DesiredCapabilities();
        //        capabilities.setBrowserName("chrome");
        //        capabilities.setCapability(ACCEPT_SSL_CERTS, true);
        //        WebDriver wd = new RemoteWebDriver(new URL("http://10.52.185.105:4419/wd/hub"), capabilities);
        //        setWebDriver(wd);

        ///////////////////////////////////for local runs////////////////////////////
        Configuration.timeout = 10000;
        System.setProperty("webdriver.chrome.driver", "src/main/resources/webdrivers/chromedriver.exe");
        Configuration.browser = "chrome";

我尝试了什么: 它在本地工作 它适用于远程机器(没有jenkins) 改变窗口大小 - 没有帮助 改变睡眠35000ms - 没有帮助

我们的詹金斯 不是作为服务开始的,所以我不知道如何允许与元素进行交互

输出:

T E S T S

运行ru.open.runners.BusinessPortalTest июн13,201889:55:27 AM com.codeborne.selenide.impl.WebDriverThreadLocalContainer getWebDriver 信息:没有webdriver绑定到当前线程:1 - 让我们创建新的webdriver 在端口5610上启动ChromeDriver 2.38.552522(437e6fbedfa8762dec75e2c5b3ddb86763dc9dcb) 仅允许本地连接。 июн13,201889:55:31 AM org.openqa.selenium.remote.ProtocolHandshake createSession 信息:检测到的方言:OSS июн13,201889:55:33 AM com.codeborne.selenide.webdriver.WebDriverFactory logBrowserVersion 信息:BrowserName = chrome版本= 67.0.3396.87平台= XP июн13,201889:55:33 AM com.codeborne.selenide.webdriver.WebDriverFactory createWebDriver 信息:Selenide v.4.11.4 июн13,201889:55:33 AM com.codeborne.selenide.webdriver.WebDriverFactory logSeleniumInfo 信息:Selenium WebDriver v.3.12.0 build time:2018-05-08T14:04:26.12Z июн13,201889:55:33 AM com.codeborne.selenide.impl.WebDriverThreadLocalContainer createDriver 信息:在当前主题1中创建webdriver:ChromeDriver - > ChromeDriver:XP上的chrome(9879008c2825cc8b84a452e24010d66d)

失败的情况: businessportaltest.feature:440#场景:更改电话号码

157222(仅与付款订单核实)

1个场景(1个失败) 29个步骤(1个失败,27个跳过,1个过去) 0m18.951s

java.lang.IllegalArgumentException:错误:在页面ru.open.pageobjects.businessportal.LoginPage中没有名称为Имяпользователя的元素。     在ru.open.pageobjects.AbstractPage.get(AbstractPage.java:27)     at ru.open.steps.MyStepdefs.typeToInputWithNamePropertyOn(MyStepdefs.java:63)     在?。输入名称为“Имяпользователя”的输入属性:“LoginPage”上的“登录”(businessportaltest.feature:443)

远程机器 - Windows Server 2012R

0 个答案:

没有答案