【问题标题】:Selenium sendTextSelenium SendText.
【发布时间】:2012-12-07 01:33:11
【问题描述】:

我需要以“我是菜鸟”作为开头。

WatiN 中,我可以使用sendText("text"); 发送整个文本,而不是像sendKeys() 那样一次输入一个字符。我在 Selenium 中寻找了很多 sendText() 选项,但似乎找不到任何有效的方法。

selenium 是否有 sendText() 选项,如果有,您能否提供代码示例?

【问题讨论】:

    标签: testing selenium webdriver


    【解决方案1】:

    在 Selenium RC(不再积极开发的旧版 JavaScript 驱动的 Selenium)中,有 type() 方法。

    在 WebDriver(也称为 Selenium 2)中,没有这样的东西。但是,您可以通过 JavaScript 轻松模拟它:

    // only if your driver supports JavaScript
    JavascriptExecutor js = (JavascriptExecutor)driver;
    
    WebElement elem = driver.findElement(By.whatever("something"));
    js.executeScript("arguments[0].value = 'some text'", elem);
    

    【讨论】:

    • 不过,我不得不问。为什么要做这种事?
    • 我有一个向文本字段发送大量文本的测试。测试运行大约需要 6 分钟。
    • Selenium 在几秒钟内将 2 页 Word 文档输入到文本区域...您确定这是导致速度变慢的原因吗?
    • 我发送给它的文件是 150 段。所以它很慢。 @Slanec,JavaScriptExecutor 中没有 executeScript 方法。
    • @Slanec 对此感到抱歉,我一定是手指发胖了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2019-12-28
    • 1970-01-01
    • 2016-09-07
    • 2012-07-23
    • 2019-07-03
    • 1970-01-01
    相关资源
    最近更新 更多