java - 使用带有 Java 的 Selenium WebDriver 播放视频

标签 java testing selenium-webdriver

我正在尝试播放以下网站的视频(使用 JUnit)- Day01。 http://www.itelearn.com/live-training/security-testing-live-training 我想要实现的是在播放视频后我会截屏以证明视频播放正常。单击 Day01 视频后,它会在新窗口中打开 - 当我查看代码时,我意识到他们使用了 iFrame。我可以关闭此视频窗口,但无法播放/暂停此视频。

要关闭我使用代码的视频-- WebDriverWait wait = new WebDriverWait(driver, 20); wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(xPath))).click();

我是测试新手,请帮助我。

最佳答案

那么你切换到 iframe 了吗?

尝试以下未经测试的Java代码,请注意,这里的逻辑很简单,你通过xpath或css选择器找到iframe元素,然后切换到它,然后点击。然而,自动化播放器可能并不那么容易和稳定。如果可以,请提供反馈,谢谢。

WebDriverWait wait = new WebDriverWait(driver, 20);
WebElement playerIframe = wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("#sb-player iframe")));
driver.switchTo().frame(playerIframe);

// make sure you have html5 video loaded, instead of flash
// otherwise Selenium won't find a thing
driver.findElement(By.cssSelector("svg.ytp-cued-icon")).click();

要默认加载 HTML5,请参阅 this page或加载扩展 HTML5 Video for YouTube启动 Selenium 时。

关于java - 使用带有 Java 的 Selenium WebDriver 播放视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17627554/

相关文章:

ruby-on-rails - 如何测试数据库记录是否按id排序?

android - Espresso :Test swipe to delete item of Recyclerview inside ViewPager

javascript - 如何同步 it block 之间的操作

python - 我看不到找到使用 Selenium 单击登录的方法

java - 如何获取跳过的空白(未跳过的原始标记)?

java - 如何在ubuntu中通过docker文件安装oracleJDK8

c# - 面向 C# 程序员的高级 Java 主题

java - Spring 测试 - @ContextConfiguration 排除基类上下文

javascript - 通过循环遍历 Javascript 中的 findElements 结果来查找特定元素

java - 如何在任何计算机上使用 Java 默认打开 Java 程序