Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Browserstack中通过Android上的Selenium执行javascript的限制?_Android_Selenium Webdriver_Jwplayer_Video.js_Browserstack - Fatal编程技术网

在Browserstack中通过Android上的Selenium执行javascript的限制?

在Browserstack中通过Android上的Selenium执行javascript的限制?,android,selenium-webdriver,jwplayer,video.js,browserstack,Android,Selenium Webdriver,Jwplayer,Video.js,Browserstack,我很难使用以下堆栈播放视频:Selenium+BrowserStack+Android+JavascriptExecutor+VideoJS Player/JWPlayer。让我们以VideosJS播放器为例 请注意,这不是Appium 当我用Selenium单击“播放视频”按钮(playBackButton.click();)时,它开始播放桌面和移动设备上的 当我用Javascript(executor.executeScript(“参数[0]。单击();”,播放BackButton);)单

我很难使用以下堆栈播放视频:Selenium+BrowserStack+Android+JavascriptExecutor+VideoJS Player/JWPlayer。让我们以VideosJS播放器为例

请注意,这不是Appium

  • 当我用Selenium单击“播放视频”按钮(
    playBackButton.click();
    )时,它开始播放桌面和移动设备上的
  • 当我用Javascript(
    executor.executeScript(“参数[0]。单击();”,播放BackButton);
    )单击时-它不会在移动设备上启动播放。在桌面上工作很好
  • 当我尝试执行本机方法
    .play()
    -它在移动设备上不起作用,在桌面上可以正常工作
有什么好处

其他详细信息(不确定是否需要,但仍然需要)


您提到的javascript方法是移动浏览器的原生方法吗?我的意思是,它在移动浏览器上是开箱即用的吗?不确定点击。
play()。
String xpath = "//*[@title='Play Video']";
playBackButton = _webDriver.findElement(By.xpath(xpath));
String script = "function sleep(ms) {" +
                "return new Promise(resolve => setTimeout(resolve, ms)); }" +
                "async function demo() {" +
                "await sleep(5000);" +
                "try{" +
                "jwplayer().play();}" +
                "catch(err) {" +
                "console.log('error');}" +
                "try{" +
                "var videoId = document.getElementsByTagName('video')[0].getAttribute('id');" +
                "videojs(videoId).play();}" +
                "catch(err){" +
                "console.log('error');}}" +
                "demo();";
JavascriptExecutor executor = (JavascriptExecutor) _webDriver;
//executor.executeScript("arguments[0].click();", playBackButton);
//executor.executeScript(script);
//playBackButton.click();