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 }

      

  • 相关阅读:
    python 通过*.cer *..pfx 获取公钥私钥
    python 交集 并集 差集
    python3 RSA加密、解密、签名
    Go 入门
    ansible入门篇一
    ACM/ICPC 之 两道dijkstra练习题(ZOJ1053(POJ1122)-ZOJ1053)
    数学软件 之 基于MATLAB的DFP算法
    ACM/ICPC 之 最短路径-dijkstra范例(ZOJ2750-POJ1135(ZOJ1298))
    ACM/ICPC 之 判别MST唯一性-Kruskal解法(POJ1679)
    ACM/ICPC 之 四道MST-Prim解法(POJ1258-POJ1751-POJ2349-POJ3026)
  • 原文地址:https://www.cnblogs.com/linxinmeng/p/6957091.html
Copyright © 2011-2022 走看看