zoukankan      html  css  js  c++  java
  • 自动化测试---常见控件

    1. link、button

    //link
    driver.findElement(By.linkText(linkText)).click();
    driver.findElement(By.partialLinkText(linkText)).click();
    
    //button
    element.click();

    2. Textbox

    element.sendKeys("");

    3. Upload

    element.sendKeys("D	est.txt");

    4. Mouse Event——ActionChains()

            Actions as = new Actions(driver);
            //悬停
            as.moveToElement(element);
            //拖拽
            as.dragAndDrop(element, element);
            //双击
            as.doubleClick(element);
            //右击 
            as.contextClick(element);

    5. DropDown:

    1)<Select>标签的下拉菜单

            Select s = new Select(element);
            //取消所有选择
            s.deselectAll();
            //通过index取消
            s.deselectByIndex(0);
            //通过vlaue取消
            s.deselectByValue("string");
            //通过text获取元素取消
            s.deselectByVisibleText("string");
            //获得所有的option
            List<WebElement> list =s.getAllSelectedOptions();
            //获得所有的option
            s.getOptions();
            //获得第一个被选择的option
            s.getFirstSelectedOption();
            //是否是多选
            s.isMultiple();
            //通过index获取元素
            s.selectByIndex(0);
            //value
            s.selectByValue("string");
            //text
            s.selectByVisibleText("string");

    2)非<select>标签——层级定位

    Dropdown1 = driver.find_element_by_id(‘id’) #先定位到dropdown
    
    Dropdown1.find_element_by_id(“li2_input_2”) #再定位到dropdown中的值

     3)使用js实现:

    6. Alert

            Alert a = driver.switchTo().alert();
            //确认
            a.accept();
            //取消
            a.dismiss();
            //获取值
            a.getText();
            //输入值
            a.sendKeys("string");

    7. Window

            //浏览器的刷新
            driver.navigate().refresh();
            //浏览器退回
            driver.navigate().back();
            //浏览器前进
            driver.navigate().forward();
            //浏览器跳转
            driver.navigate().to("");
            //根据URL浏览器跳转
            driver.navigate().to("URL");
            //跳转
            driver.switchTo().window("");

    8. frame

            //根据下标跳转
            driver.switchTo().frame(0);
            //根据name跳转
            driver.switchTo().frame("");
            //根据元素跳转
            driver.switchTo().frame(element);

     9.状态

    Boolean b = driver.findElement(By.id("")).isDisplayed();
    Boolean b1 = driver.findElement(By.id("")).isEnabled();
    Boolean b2 = driver.findElement(By.id("")).isSelected();

    10.JS

    // 创建一个JavascriptExecutor对象  
    JavascriptExecutor js= (JavascriptExecutor)driver;  
              
    username.sendKeys("abcdefg");  
    // 设置颜色  
    js.executeScript("arguments[0].setAttribute('style', 'background: yellow; border: 2px solid red;');",username);
  • 相关阅读:
    nginx重新安装操作
    npm 安装部分模块失败处理
    idea 修改每个变量名都是不同的颜色
    使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development、production)
    【问题与解决】Github 上传代码报错(error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version)
    Eclipse无法打开 Eclipse MarketPlace的解决办法(版本4.8)
    常见数据结构及基本用法
    并差集
    贪心
    二分and三分
  • 原文地址:https://www.cnblogs.com/liu-Gray/p/7825908.html
Copyright © 2011-2022 走看看