• 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 }

      

  • 相关阅读:
    一个随机数生成函数
    HTTP Post请求过程详解
    md5加密算法c语言版
    android popupwindow 自定义视图
    android 获取顶部状态栏的高度
    android 显示和隐藏输入框
    android tablayout + recycleview 简单使用
    jetpack paging使用
    android 自定义控件 属性配置
    vueLazyload 图片懒加载
  • 原文地址:https://www.cnblogs.com/linxinmeng/p/6957091.html
Copyright © 2020-2023  润新知