检查java selenium中的音频是否静音

时间:2016-04-03 12:17:25

标签: java selenium audio webdriver selenium-chromedriver

我正在尝试找到任何可以帮助我验证音频是否静音的内容。

网络驱动程序中会有一个Flash视频,我需要知道视频之前的广告是否处于静音状态!有可能做那样的事吗?

2 个答案:

答案 0 :(得分:0)

Selenium本身并没有帮助,但Java确实如此。看一下Java AudioSystem类。

Port lineIn;
FloatControl volCtrl;
try {
  Mixer mixer = AudioSystem.getMixer(null);
  lineIn = (Port)mixer.getLine(Port.Info.LINE_IN);
  lineIn.open();
  volCtrl = (FloatControl) lineIn.getControl(

  FloatControl.Type.VOLUME);

  // Assuming getControl call succeeds, 
  // we now have our LINE_IN VOLUME control.
} catch (Exception e) {
  System.out.println("Failed trying to find LINE_IN"
    + " VOLUME control: exception = " + e);
}

请参阅here进行讨论(搜索静音)。

答案 1 :(得分:0)

您的HTML表示该网页正在播放HTML5视频而不是Flash,并且该播放器是VIDEOJS(http://videojs.com)。 他们的文档表明API符合HTML5,因此这适用于您的情况:

boolean isMuted = ((JavascriptExecutor)driver).executeScript(
    "return window.videojs('vjs_video_3_html5_api').muted()");

请注意,在执行此代码之前,您必须将上下文设置为父框架。