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"));
}
}