2017-02-28 95 views
1

我是相当新的前端土地,所以容忍我...我有一个嵌入视频的HTML网页通过HTML视频标签,像这样:的视频标签量角器测试

<video id=... class=...> 
    <source src=... type="video/mp4"> 
</video> 

这视频在完成播放时重置为开始。现在我想用量角器来测试这个。目前我可以获得该元素,但我不知道如何播放/暂停视频,查看视频的距离等等,从量角器测试。我可以通过element(by.id('<id>'))获取元素,我可以像普通的东西一样看它是否可见,点击它等等,但不知道如何获得元素的内容。

UPDATE:

这样做的问题是,控制由浏览器作为我的视频标签所指定“控制”属性。这意味着播放/暂停按钮不是DOM的一部分,因此我无法实现它。此外,浏览器是发送事件以表示视频已结束的浏览器。因此,为了让我测试视频在结束后重置,我需要点击没有列为DOM对象的播放按钮。有没有办法在不播放视频的情况下触发“结束”事件?或者我可以通过将currentTime属性设置为duration属性来触发它?

回答

0

要播放视频,你将不得不选择从“DOM”,而不是视频标签“播放”按钮,按id说元素(by.css(“<的.class播放按钮>”)) 和如果它存在于isPresent()的回调中,则添加click事件。为了给出完整的答案,最好在播放视频时获得“DOM”的快照。

+0

有没有办法让我获得打印出来的'DOM'的快照?由于播放按钮位于视频标签内,我无法看到它是什么类,我不知道如何调用'element(by.css('<播放按钮>'的类))' – user972276

+0

我尝试过'element .css('btn btn-default'))',但没有被发现 – user972276

1

您不能通过选择器选择播放/暂停控制,而是您可以自行添加按钮并向其中添加HTML音频/视频事件。这样你可以自动使用该按钮。

button.onclick = function() { 
    (videoSelector).play/pause(); 
} 
+0

Thanks @Hawari Abdulla –

0

我发现目前最好的选择是使用普通的JavaScript来自动执行 暂停,播放等加入如下代码或者在一个页面对象或规范的:

browser.executeScript(function() { 
     var video = document.getElementById('video'); 
     video.play(); 
    });