• selenium测试(Java)--执行JS(十八)


    1.  操作滚动条

    package com.test.js;
    
    import org.openqa.selenium.By;
    import org.openqa.selenium.Dimension;
    import org.openqa.selenium.JavascriptExecutor;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    
    public class WindowScroll {
    
        public static void main(String[] args) {
            WebDriver driver = new FirefoxDriver();
            driver.get("http://www.baidu.com");
            driver.manage().window().setSize(new Dimension(600, 600));
    
            waitTime(3000);
            driver.findElement(By.cssSelector("#kw")).sendKeys("selenium");
            driver.findElement(By.cssSelector("#su")).click();
    
            waitTime(3000);
            String js = "window.scrollTo(100,450);";
            ((JavascriptExecutor) driver).executeScript(js);
    
            waitTime(5000);
            driver.quit();
    
        }
    
        static public void waitTime(int time) {
    
            try {
                Thread.sleep(time);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

    2.在textarea中输入内容

    package com.test.js;
    
    import org.openqa.selenium.By;
    import org.openqa.selenium.JavascriptExecutor;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    
    public class TextareaInput {
    
        public static void main(String[] args) {
            WebDriver driver = new FirefoxDriver();
            driver.get("file:///D:/10-selenium/workspace/SeleniumTest/src/com/test/js/textarea.html");
            driver.manage().window().maximize();
    
            driver.findElement(By.cssSelector("#id")).sendKeys("input text----");
    
            // 利用JS来输入内容
            waitTime(5000);
            String text = "input by js";
            String js = "var sum = document.getElementById('id'); sum.value='" + text + "';";
            System.out.println(js);
            ((JavascriptExecutor) driver).executeScript(js);
    
        }
    
        static public void waitTime(int time) {
    
            try {
                Thread.sleep(time);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

    参考:

    http://www.cnblogs.com/tobecrazy/p/4817946.html

  • 相关阅读:
    内核中的内存都不分页
    SQL Server 变更数据捕获(CDC)
    FPGA视频拼接器的放大和缩小功能
    Button的Click事件与js函数的两种不同顺序触发方式
    STM32系列ARM单片机介绍
    开源ETL工具kettle--数据迁移
    hdu 2846 Repository
    LeetCode 231:Power of Two
    hdu 4628 Pieces(状态压缩+记忆化搜索)
    MongoDB 数据库下载和安装
  • 原文地址:https://www.cnblogs.com/xinxin1994/p/7289589.html
Copyright © 2020-2023  润新知