zoukankan      html  css  js  c++  java
  • selenium 操作文本框(textarea输入)

    selenium 对文本框的输入操作一般有两种形式,传统的是直接通过定位元素通过sendKeys()方法直接在文本框中输入信息。但有时候我们可以通过id 的方式将其进行定位,但却不能通过sendKeys()向文本框中输入文本信息。

    这种情况下,也需要借助JavaScript 代码完成输入。

     HTML代码

    <textarea id="id" style=" 98%" cols="50" rows="5" class="txtarea">
    </textarea>
    ...
    ...

    第一种:

    driver.findElement(By.id("id")).sendKeys("需要输入的内容");

     1 public static void main(String[] args) throws InterruptedException {
     2     System.setProperty("webdriver.chrome.driver", "D:/chromedriver_win32/chromedriver.exe");
     3     ChromeOptions Options = new ChromeOptions();
     4     Options.addArguments("user-data-dir=C:\Users\happy\AppData\Local\Google\Chrome\User Data");
     5     WebDriver driver = new ChromeDriver(Options);
     6     driver.manage().window().maximize();
     7     try {
     8     driver.get("file:///C:/Users/happy/Desktop/NewFile.html");
     9     driver.findElement(By.id("id")).sendKeys("需要输入的内容");
    10     } finally {
    11         Thread.sleep(5000);
    12     driver.close();
    13     driver.quit();
    14     }
    15 }

    第二种:

    通过executeScript()执行JavaScript 代码。来实现文本框操作。

     1 public static void main(String[] args) throws InterruptedException {
     2     System.setProperty("webdriver.chrome.driver", "D:/chromedriver_win32/chromedriver.exe");
     3     ChromeOptions Options = new ChromeOptions();
     4     Options.addArguments("user-data-dir=C:\Users\happy\AppData\Local\Google\Chrome\User Data");
     5     WebDriver driver = new ChromeDriver(Options);
     6     driver.manage().window().maximize();
     7     try {
     8     driver.get("file:///C:/Users/happy/Desktop/NewFile.html");
     9     String text = "input text";
    10     String js = "var sum=document.getElementById('id'); sum.value='" + text + "';";
    11     ((JavascriptExecutor)driver).executeScript(js);
    12     } finally {
    13         Thread.sleep(5000);
    14     driver.close();
    15     driver.quit();
    16     }
    17 }

      

  • 相关阅读:
    jenkins 参数化构建,获取git分支
    maven 历史版本下载
    spring mybatis 多个数据源配置
    springmvc 加载静态文件失败
    java服务覆盖率统计 jacoco ant
    testng监听ISuiteListener
    记录一下这几天遇到的坑(.netcore 代理问题)
    Js获取客户端用户Ip地址
    如何获取AWS的Access Key ID 和 Secret Access Key (Unable to find credentials)
    记录一个EF连接查询的异常:the entity or complex type 'x' cannot be constructed in a linq to entities query
  • 原文地址:https://www.cnblogs.com/linxinmeng/p/6957091.html
Copyright © 2011-2022 走看看