如何在文本框中找到并键入内容

如何在文本框中找到并键入内容

本文介绍了如何在文本框中找到并键入内容的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

public class testFluent {

WebDriver driver;
    @Before
        public void setUp(){
    driver = new FirefoxDriver();
    driver.manage().window().maximize();
    driver.manage().deleteAllCookies();}

         @Test
        public void myFirstFluent(){
        WebElement element;
        driver.get("http://www.yahoo.com");
        element = myDynamicElement(By.id("//*[@id='p_13838465-p']"));
        System.out.println("Element found");
        }

        public WebElement myDynamicElement(final By locator){

        Wait<WebDriver> wait = new FluentWait<WebDriver>(driver)
                    .withTimeout(10, TimeUnit.SECONDS)
                    .pollingEvery(100, TimeUnit.MILLISECONDS)
                    .ignoring(NoSuchElementException.class);

            WebElement element = wait.until(new Function<WebElement, WebDriver>(){

                public WebElement apply(WebDriver drv){
                    return drv.findElement(By.id(locator));
                }
            });

                return element;
        }

    }

我无法找到并以错误结尾.

I am unable to locate and ends with Error.

By类型的方法id(String)不适用于com.junit.qa.testFluent.myDynamicElement(testFluent.java:49)上的参数(By)

The method id(String) in the type By is not applicable for the arguments (By) at com.junit.qa.testFluent.myDynamicElement(testFluent.java:49)

推荐答案

稍等片刻,您可以使用

    private boolean wAit(String match)
    {
    try
        {
        (new WebDriverWait(driver, 30))
            .until(ExpectedConditions.presenceOfElementLocated (By.xpath(match)));
        return true;
        }
    catch (NoSuchElementException e) {
        return false;
    }
    }

您可以创建上述方法,并在需要等待元素的任何地方使用它.例如

You can create the above method and use it where ever you need to wait for an element. for example

如果要在文本框中写一些东西,并想等待文本框加载

if want a write something in the textbox and want to wait for the text box to load

wAit(" xpath of the textbox here")
driver.findelements... sendkeys()..

如果需要,您可以更改定位器类型,也可以增加/减少时间限制

If you want you can change the locator type and increase/decrease the time limit also

这篇关于如何在文本框中找到并键入内容的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-30 07:19