码迷,mamicode.com
首页 > 其他好文 > 详细

(六-3)从查找元素到操作元素

时间:2018-09-29 00:43:37      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:注意   system   not   ebe   drivers   testng   针对   www   搜索   

在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类提供。

Actions 类提供了鼠标操作的常用方法:

  • contextClick() 右击

  • clickAndHold() 鼠标点击并控制

  • doubleClick() 双击

  • dragAndDrop() 拖动

  • release() 释放鼠标

  • perform() 执行所有Actions中存储的行为


文本框输入文本:sendkeys()

清空文本框:clear()

获取文本:getText()  ---> 只能取出标签中间的文本

获取title:getTitle()  

获取tagName:getTagName()

获取属性值:getAttribute()

判断元素是否展示:isDisplayed()

判断选择框是否被选取:isSelected()

判断输入框是否被激活:isEnabled()

eg:

package Day2OperateElement;

import org.openqa.selenium.*;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.Assert;
import org.testng.annotations.Test;

import javax.swing.border.TitledBorder;
import java.util.List;

public class OperateElement {
    WebDriver webDriver;
    /* 1.打开百度新闻链接并校验当前链接是否正确打开 */
    @Test
    public void OpenLink(){
        System.setProperty("webdriver.chrome.driver","D:\\Program Files\\Java\\Webautomation\\drivers\\chromedriver.exe");
        webDriver = new ChromeDriver();
        webDriver.get("https://www.baidu.com/");
        WebElement newslink = webDriver.findElement(By.name("tj_trnews"));
        newslink.click();
        String linkurl = webDriver.getCurrentUrl();
        Assert.assertEquals(linkurl,"http://news.baidu.com/","当前输出不是新闻链接");
    }
    /* 2.打开百度搜索框输入selenium,
    点击百度一下搜索,搜索出来的第一行是不是指定值来确定搜索结果
    当前搜索结果正确,清除搜索框内内容*/
    @Test
    public void sendkeysTest() throws InterruptedException {
        webDriver.get("http://www.baidu.com");
        //定位搜索框
        WebElement inputkuang = webDriver.findElement(By.id("kw"));
        //输入selenium值,注意sendkeys只针对文本框
        inputkuang.sendKeys("selenium");
        //定位百度按钮并点击
        WebElement baiduButton = webDriver.findElement(By.id("su"));
        baiduButton.click();
        //给页面一个反应时间3s,网速快的时候可能没到就获取到了,网速慢可能30s都不行,sleep不是最好的方法
        Thread.sleep(3000);
        //获取页面title并做校验
        String title = webDriver.getTitle();
        Assert.assertEquals(title,"selenium_百度搜索");
        //清除输入框文本,如果有出错,则清空重新输入
        inputkuang.clear();
        //清除结束后校验文本框内的String是否是空,不建议再assert方法胡再操作
        //gettext获取的标签中间的值,所以当input框输入时并不在inputi标签中间,会获取到空白值
        String title2 = inputkuang.getText();
        System.out.println(title2);
    }
}

 

(六-3)从查找元素到操作元素

标签:注意   system   not   ebe   drivers   testng   针对   www   搜索   

原文地址:https://www.cnblogs.com/chenxiaomeng/p/9721540.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!