控制HTML5页面代码
2017-03-29 14:06
141 查看
package com.gloryroad.testcase;
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import com.gloryroad.Demo.JavaScriptExcutor;
/**
* 操控HTML5 视频页面
* @author UC217288
*
*/
public class TestHTML5VideoPlayer {
public WebDriver driver;
String baseUrl="http://www.w3school.com.cn/tiy/loadtext.asp?f=html5_video_simple";
@BeforeMethod
public void setUp(){
driver=new FirefoxDriver();
}
@AfterMethod
public void tearDown(){
driver.close();
}
@Test
public void testHtml5() throws IOException{
//定义页面截图文件对象,用于后面的屏幕截图存储
File captureScreenFile=null;
//访问页面
driver.get(baseUrl);
//打印出来HTML5页面资源
// System.out.println(driver.getPageSource());
//获取页面video标签
WebElement vide=driver.findElement(By.tagName("video"));
//声明一个JavaScriptExcutor对象
JavascriptExecutor js=(JavascriptExecutor)driver;
//获取文件网络存储地址
String videoSrc=(String) js.executeScript("return arguments[0].currentSrc", vide);
System.out.println(videoSrc);
Double tims=(Double) js.executeScript("return arguments[0].duration", vide);
System.out.println(tims.intValue());
try {
Thread.sleep(5000);
} catch (Exception e) {
// TODO: handle exception
}
js.executeScript("arguments[0].play()", vide);
try {
Thread.sleep(2000);
} catch (Exception e) {
// TODO: handle exception
}
js.executeScript("arguments[0].pause()", vide);
try {
Thread.sleep(3000);
} catch (Exception e) {
// TODO: handle exception
}
captureScreenFile=((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(captureScreenFile, new File("resuorce/555.png"));
}
}
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import com.gloryroad.Demo.JavaScriptExcutor;
/**
* 操控HTML5 视频页面
* @author UC217288
*
*/
public class TestHTML5VideoPlayer {
public WebDriver driver;
String baseUrl="http://www.w3school.com.cn/tiy/loadtext.asp?f=html5_video_simple";
@BeforeMethod
public void setUp(){
driver=new FirefoxDriver();
}
@AfterMethod
public void tearDown(){
driver.close();
}
@Test
public void testHtml5() throws IOException{
//定义页面截图文件对象,用于后面的屏幕截图存储
File captureScreenFile=null;
//访问页面
driver.get(baseUrl);
//打印出来HTML5页面资源
// System.out.println(driver.getPageSource());
//获取页面video标签
WebElement vide=driver.findElement(By.tagName("video"));
//声明一个JavaScriptExcutor对象
JavascriptExecutor js=(JavascriptExecutor)driver;
//获取文件网络存储地址
String videoSrc=(String) js.executeScript("return arguments[0].currentSrc", vide);
System.out.println(videoSrc);
Double tims=(Double) js.executeScript("return arguments[0].duration", vide);
System.out.println(tims.intValue());
try {
Thread.sleep(5000);
} catch (Exception e) {
// TODO: handle exception
}
js.executeScript("arguments[0].play()", vide);
try {
Thread.sleep(2000);
} catch (Exception e) {
// TODO: handle exception
}
js.executeScript("arguments[0].pause()", vide);
try {
Thread.sleep(3000);
} catch (Exception e) {
// TODO: handle exception
}
captureScreenFile=((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(captureScreenFile, new File("resuorce/555.png"));
}
}
相关文章推荐
- 框架页面尽可以这么用(后置代码中控制框架)
- 用JScript控制页面图的图片大小的通用代码
- 控制webView控件或者HTML5页面上方加载条
- html页面控制字体大小的js代码
- 在后台代码中控制HTML页面标记属性
- 用segmentedControl控制显示n个页面之一(思想、思路、无代码)--iOS开发
- 揭露黑客是如何通过上传一个jsp页面控制和攻击你web站点的(含jsp代码)
- html中iframe控制父页面刷新实现思路及代码
- 如何用代码控制以不同屏幕方向打开新页面【iOS】
- 用JS控制页面图的图片大小的通用代码
- jQuery学习笔记之控制页面实现代码
- jQuery学习笔记之控制页面实现代码
- HTML5样式控制示例代码
- 页面代码HTML5 Canvas: 在HTML页面中添加Canvas
- 框架页面尽可以这么用(后置代码中控制框架)
- javascript代码控制图片在页面显示时等比例缩放
- jquery 控制framese的代码,以及控制frame页面的JS
- 请用html5标准完成以下页面布局(要求完整书写整个页面的html代码,不需要写CSS)
- 移动前端开发中添加一些webkit专属的HTML5头部标签,帮助浏览器更好解析html代码,更好地将移动web前端页面表现出来。本文整理一些常用的meta标签