swd-recorder
swd-recorder copied to clipboard
Unable to Identify Play Video button in Iframe
Have create a small video explaining Unable to Identify Play Video button in Iframe
Below website i am testing, i am using windows 10 and Chrome version 61
http://utubehits.com/ uid :- [email protected] pwd :- Tapan@321
https://www.youtube.com/watch?v=KT0hSNkfCD8
Below is code i wrote
package basic.basic;
import java.util.Iterator; import java.util.Set;
import org.openqa.selenium.By; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.interactions.Actions;
import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite;
/**
- Unit test for simple App. */ public class AppTest extends TestCase { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver","C://Sprints//chromedriver_win32//chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.get("http://utubehits.com/"); driver.findElement(By.name("login")).sendKeys("[email protected]"); driver.findElement(By.name("pass")).sendKeys("Tapan@321"); driver.findElement(By.name("connect")).click(); driver.findElement(By.linkText("YouTube Views")).click(); driver.findElement(By.linkText("Watch Video")).click(); System.out.println(driver.getTitle()); driver.switchTo().frame(0).switchTo().frame(0); //Code to switch to iframe driver.findElement(By.id("player_uid_938008203_1")).click(); //code to click Play button at Youtube
}
}
I changed the code a bit ,this time is this
package basic.basic;
import java.util.Iterator; import java.util.Set;
import org.openqa.selenium.By; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.interactions.Actions;
import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite;
/**
-
Unit test for simple App. */ public class AppTest extends TestCase { public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver","C://Sprints//chromedriver_win32//chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.get("http://utubehits.com/"); driver.findElement(By.name("login")).sendKeys("[email protected]"); driver.findElement(By.name("pass")).sendKeys("Tapan@321"); driver.findElement(By.name("connect")).click(); driver.findElement(By.linkText("YouTube Views")).click(); driver.findElement(By.linkText("Watch Video")).click(); System.out.println(driver.getTitle()); /*WebElement elm = driver.findElement(By.id("iframe")); String urlStr = elm.getAttribute("src"); System.out.println("Video Url : " + urlStr); driver.navigate().to(urlStr);*/ driver.switchTo().frame(0).switchTo().frame(0); driver.findElement(By.cssSelector("button[class='ytp-large-play-button ytp-button']")).click();
}
}
I am getting below error
Exception in thread "main" org.openqa.selenium.WebDriverException: unknown error: Element is not clickable at point (0, 1) (Session info: chrome=61.0.3163.100) (Driver info: chromedriver=2.32.498550 (9dec58e66c31bcc53a9ce3c7226f0c1c5810906a),platform=Windows NT 10.0.15063 x86_64) (WARNING: The server did not provide any stacktrace information) Command duration or timeout: 0 milliseconds Build info: version: '3.6.0', revision: '6fbf3ec767', time: '2017-09-27T15:28:36.4Z' System info: host: 'TDAS-PK', ip: '10.83.120.21', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_144' Driver info: org.openqa.selenium.chrome.ChromeDriver Capabilities [{mobileEmulationEnabled=false, hasTouchScreen=false, platform=XP, acceptSslCerts=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, platformName=XP, setWindowRect=true, unexpectedAlertBehaviour=, applicationCacheEnabled=false, rotatable=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.32.498550 (9dec58e66c31bcc53a9ce3c7226f0c1c5810906a), userDataDir=C:\Users\prokarma\AppData\Local\Temp\scoped_dir18564_4772}, takesHeapSnapshot=true, pageLoadStrategy=normal, unhandledPromptBehavior=, databaseEnabled=false, handlesAlerts=true, version=61.0.3163.100, browserConnectionEnabled=false, nativeEvents=true, locationContextEnabled=true, cssSelectorsEnabled=true}] Session ID: 6eb940c2236cb514a969ff424af7229d at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:214) at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:166) at org.openqa.selenium.remote.http.JsonHttpResponseCodec.reconstructValue(JsonHttpResponseCodec.java:40) at org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:82) at org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:45) at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:164) at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:586) at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:279) at org.openqa.selenium.remote.RemoteWebElement.click(RemoteWebElement.java:83) at basic.basic.AppTest.main(AppTest.java:44)