selenium之Html5标签处理

  1. video 标签
    html5定义了新的标签来播放视频文件,如果需要播放由包围的视频文件,具体操作如下:
WebDriver driver = new FirefoxDriver();
driver.get("http://videojs.com/");
pause(2000);
//找到vedio元素
WebElement vedio = driver.findElement(By.id("preview-player_html5_api"));
//声明js执行器
JavascriptExecutor js = (JavascriptExecutor) driver;
//对vedio这个元素执行播放操作
js.executeScript("arguments[0].play()", vedio);
//为了观察效果暂停5秒
pause(5000);
//对vedio这个元素执行暂停操作
js.executeScript("arguments[0].pause()", vedio);
//为了观察效果暂停2秒
pause(2000);
//对vedio这个元素执行重新加载视频的操作
js.executeScript("arguments[0].load()", vedio);
//为了观察效果暂停2秒
pause(2000);
driver.quit();

对js.executeScript(“arguments[0].pause()”, vedio),executeScript方法接收了两个参数,这个方法会根据第二个参数,来执行第一个参数中的语句,方法整体会根据vedio这个参数找到相关的对象(有的不止一个),然后执行选取第一个对象进行pasue()操作,arguments[0]表示众多vedio对象中的第一个,因为这个方法在查找vedio的时候返回值是list类型,即使返回的vedio只有一个,也必须按照arguments[0]这种写法。

2.Canvas标签
是html5提供的一套画图标签,
找到canvas元素之后就可以对画布进行画图操作了,代码如下:

WebDriver driver = new FirefoxDriver();
driver.get("http://literallycanvas.com/");
pause(2000);
//找到canvas元素
WebElement canvas = driver.findElement(By.xpath("//*[@id='literally-canvas']//canvas[1]"));
//声明一个操作类
Actions drawPen = new Actions(driver);
//点击并保持不放鼠标 ,按照给定的坐标点移动
drawPen.clickAndHold(canvas).moveByOffset(20, 100).moveByOffset(100, 20).moveByOffset(-20, -100).moveByOffset(-100, -20).release().perform();
pause(2000);
driver.quit();

你可能感兴趣的:(selenium)