zoukankan      html  css  js  c++  java
  • 测试HTML5语言实现的视频播放器

    获取HTML5语言实现的视频播放器视频文件的地址、时长,控制播放器进行播放或暂停播放等操作。

    #!usr/bin/env python  
    #-*- coding:utf-8 -*-  
    #测试HTML5语言实现的视频播放器
    
    import unittest
    from selenium import webdriver
    import time
    
    class TestDemo(unittest.TestCase):
        def setUp(self):
            self.driver = webdriver.Chrome()
    
        def test_HTML5VideoPlayer(self):
            url = 'http://www.w3school.com.cn/tiy/loadtext.asp?f=html5_video_simple'
            #访问HTML5语言实现的播放器网页
            self.driver.get(url)
            #打印访问网页的页面源代码,供读者学习
            print(self.driver.page_source)
            #获取页面中的video标签元素对象
            videoPlayer = self.driver.find_element_by_tag_name('video')
            #使用JavaScript语句,通过播放器内部的currentSrc属性获取视频文件的网络存储地址
            videSrc = self.driver.execute_script("return arguments[0].currentSrc;",videoPlayer)
            #打印网页中视频存放地址
            print(videSrc)
            self.assertEqual(videSrc,'http://www.w3school.com.cn/i/movie.ogg')
            #使用JavaScript语句,通过播放器内部的duration属性获取视频文件的播放时长
            videoDuration = self.driver.execute_script
                ("return arguments[0].duration;",videoPlayer)
            #打印视频时长
            print(videoDuration)
            self.assertEqual(int(videoDuration),3)
            #使用JavaScript语句,通过调用播放器内部的play()方法来播放影片
            self.driver.execute_script("return arguments[0].play();",videoPlayer)
            time.sleep(2)
            #播放2秒后,使用JavaScript语句,通过调用播放器内部的pause函数来暂停播放影片
            self.driver.execute_script("return arguments[0].pause();",videoPlayer)
            time.sleep(3)
            #将暂停视频播放页面进行截屏,并保存为D盘的videoPlay_pause.jpg文件
            self.driver.save_screenshot('e:\videoPlay_pause.png')
    
        def tearDown(self):
            self.driver.quit()
    
    if __name__ == '__main__':
        unittest.main()

    说明:

           控制视频播放器的原理均需要使用JavaScript语句来调用视频播放器内部的属性和接口来完成我们想要做的操作。

  • 相关阅读:
    SequenceInputStream
    BufferedReader
    FileWriter
    FileReader
    BufferedOutputStream
    javascript/html 禁止图片缓存
    localStorage util
    FormData上传文件 带进度条
    javascript 一些函数的实现 Function.prototype.bind, Array.prototype.map
    替代jquery中的几个函数
  • 原文地址:https://www.cnblogs.com/sleeping-cat/p/8278716.html
Copyright © 2011-2022 走看看