Selenium Java Webdriver: Adding a string to an Xpa

2020-05-06 10:40发布

I have the folllowing piece of Java in which I want to add a String inside a statement:

     @and ("^I want to change fieldnumber \"([^\"]*)\" , remove whats inside and add the following text: \"([^\"]*)\"$")

    public void testscenario12345(String number,  String text) throws Throwable {
    driver.findElement(By.xpath("//*[contains(@name,'template:view:<INSERT NUMBER STRING HERE>:item:view:1:item:')]")).clear();
    driver.findElement(By.xpath("//*[contains(@name,'template:view:<INSERT NUMBER STRING HERE>:item:view:1:item:')]")).sendKeys(text);

How can I add the number string in the above piece of code? To clarify, If I insert "4" in cucumber, I want the driver to find the element by Xpath, where the @name contains template:view:4:item:view:1:item:

1条回答
Explosion°爆炸
2楼-- · 2020-05-06 11:43

What about

driver.findElement(By.xpath("//*[contains(@name,\"template:view:" + number+ ":item:view:1:item:\")]")).clear();

And you probably need the number to be const, that means:

public void testscenario12345(final String number,  String text) throws Throwable {
查看更多
登录 后发表回答