zoukankan      html  css  js  c++  java
  • 【java+selenium3】模态框处理(五)

    一、模态框的定义:

      模态对话框(Modal Dialogue Box , 又叫做模式对话框),是指在用户想要对话框以外的应用程序进行操作时候,必须先对该对话框进行响应.如单击【确定】或者【返回】按钮等关闭该对话框!

    1.警告框
      警告框经常用于确保用户可以得到某些信息。
      当警告框出现后,用户需要点击确定按钮才能继续进行操作。
      语法:
    代码如下:

    alert("文本")

    2.确认框

      确认框用于使用户可以验证或者接受某些信息。

      当确认框出现后,用户需要点击确定或者取消按钮才能继续进行操作。

      如果用户点击确认,那么返回值为 true。如果用户点击取消,那么返回值为 false。

    语法:

    confirm("文本")

    3.提示框

      提示框经常用于提示用户在进入页面前输入某个值。

      当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。

      如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。

    语法:

    prompt("文本","默认值")

    二、测试页面准备

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>模态框</title>
    </head>
    <script type="text/javascript">
    window.onload = function(){
        document.getElementById("input_1").onclick = function(){
            alert("充值成功!");
        };
        document.getElementById("input_2").onclick = function(){
            confirm("确认充值50元?")
        };
        document.getElementById("input_3").onclick = function(){
            prompt("请输入充值金额?","100");
        };
    }
    
    </script>
    <body>
        测试练习模态框的处理:<br><br>
        1.警告框
        <input type="button" id="input_1" value="点击弹出警告框"><br><br>
        2.确认框
        <input type="button" id="input_2" value="点击弹出确认框"><br><br>
        3.提示框
        <input type="button" id="input_3" value="点击弹出提示框"><br><br>
    </body>
    </html>

    三、代码实现

    package cn.test;
    
    import org.openqa.selenium.By;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    
    public class Test01 {
    
        public static void main(String[] args) {
            System.setProperty("webdriver.chrome.driver", "src/test/resources/chromedriver.exe");
            WebDriver driver =null;
            try {
                driver = new ChromeDriver();
                driver.get("file:///C:/Users/Administrator/Desktop/test/ModalDialogueBox.html");
                driver.manage().window().maximize();
                //1.点击弹出警告框
                driver.findElement(By.id("input_1")).click();
                Thread.sleep(3000);
                //1.1 处理弹出警告框
                System.out.println("获取警告框文本值:"+driver.switchTo().alert().getText());
                driver.switchTo().alert().accept();//模拟确认操作
                //2. 点击弹出确认框
                driver.findElement(By.id("input_2")).click();
                Thread.sleep(3000);
                //2.1 处理弹出确认框
                System.out.println("获取确认框文本值:"+driver.switchTo().alert().getText());
                driver.switchTo().alert().accept();//模拟确认操作
                //2.2 再次点击弹出确认框演示取消操作
                driver.findElement(By.id("input_2")).click();
                Thread.sleep(3000);
                driver.switchTo().alert().dismiss();//模拟取消操作
                //3.0 点击弹出提示框
                driver.findElement(By.id("input_3")).click();
                System.out.println("获取提示框文本值:"+driver.switchTo().alert().getText());
                //3.1 处理弹出提示框
                driver.switchTo().alert().sendKeys("500");
                Thread.sleep(3000);
                driver.switchTo().alert().accept();//模拟确认操作
                //3.2 再次点击弹出提示框演示取消操作
                driver.findElement(By.id("input_3")).click();
                Thread.sleep(3000);
                driver.switchTo().alert().dismiss();//模拟取消操作
                Thread.sleep(3000);
            } catch (Exception e) {
                e.printStackTrace();
            } finally{
                System.out.println("执行结束,关闭浏览器");
                driver.quit();
            }
    
        }
    
    }

    四、学习后总结。不足之处后续补充修正!

  • 相关阅读:
    转 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
    call_grant_sel.sql
    sql server 2008 评估期已过期解决办法
    (2.3)学习笔记之mysql基础操作(表/库操作)
    (2.2)学习笔记之mysql基础操作(登录及账户权限设置)
    Red Gate系列
    教你使用SQL数据库索引(1-15)
    cache与buffer的区别
    (4.17)什么情况下应该使用索引
    windows server2003/2008中权限账户
  • 原文地址:https://www.cnblogs.com/xiaozhaoboke/p/11128200.html
Copyright © 2011-2022 走看看