**我用POM模型,並利用硒的webdriver(的Eclipse)來運行我的代碼,但我卡住了,讓NoSuchElementException
NoSuchElement異常(硒)
org.openqa.selenium .NoSuchElementException:無法找到元素://輸入[@ id ='email']有關此錯誤的文檔,請訪問:http://seleniumhq.org/exceptions/no_such_element.html構建信息:版本:'3.4.0',修訂:'未知',時間:'未知'系統信息:host:'ISHWS37',ip:'10.0.0.60',os.name:'Windows 10',os.arch:'amd64',os.version:'10 .0',java.version:'1.8。 0_111'驅動程序信息:org.openqa.selenium.firefox.FirefoxDriver功能[{rotata ble = false,raisesAccessibilityExceptions = false,appBuildId = 20160421124000,版本= 46.0,platform = XP,proxy = Proxy(),specificationLevel = 1,acceptSslCerts = false,browserVersion = 46.0,platformVersion = 10.0,XULappId = {ec8030f7-c20a-464f會話ID:02585599-6b3e-4c03-9b2b-04291afa2052 ***元素信息:{},browserName = Firefox,takesScreenshot = true,takesElementScreenshot = true,javascriptEnabled = true,platformName = Windows_NT,device = desktop}使用的xpath =,=值//輸入[@ ID = '電子郵件']}在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本機方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance(未知來源)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance (未知來源)在java.lang.reflect.Constructor.newInstance在org.openqa.selenium.remote.http(未知來源)在org.openqa.selenium.remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:150)。 W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:115)at org.openqa.selen ium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:45)at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:164)at org.openqa.selenium.remote.service.DriverCommandExecutor.execute( DriverCommandExecutor.java:82)在org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:637)在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:410)在org.openqa.selenium .remote.RemoteWebDriver.findElementByXPath(RemoteWebDriver.java:509)在org.openqa.selenium.By $ ByXPath.findElement(By.java:361)在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:402 )at com.babysden.pages.Loginpage.type_username(Loginpage.java:28)at com.babysden.testcases.Verify_login.verifylogin(Verify_login.java:37)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun。反射.NativeMethodAccessorImpl.invoke(未知源)在sun.reflect.DelegatingMethodAccessorImpl.invoke(未知源)在java 。org.testng.internal.Invoker.invokeMethod(Invoker.java:645)org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:104).lang.reflect.Method.invoke(Unknown Source) .internal.Invoker.invokeTestMethod在組織(Invoker.java:851)在org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1177)在org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)。在org.testng.TestRunner.privateRun(TestRunner.java:756)上的testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)位於org.testng.TestRunner.run(TestRunner.java:610)的org.testng.SuiteRunner .runTest(SuiteRunner.java:387)在org.testng.SuiteRunner.runSequentially(SuiteRunner.java:382)在org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)在org.testng.SuiteRunner.run(SuiteRunner。 java:289)at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)at org.testng.TestNG.runSuitesSequentiall y(TestNG.java:1293)at org.testng.TestNG.runSuitesLocally(TestNG.java:1218)at org.testng.TestNG.runSuites(TestNG.java:1133)at org.testng.TestNG.run(TestNG.java :1104)at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:236)at org.testng.remote.RemoteTestNG.main(RemoteTestNG。 java:81)。 當我執行代碼以前沒有這樣的元素被拋出也XPath我輸入是正確的,我已經驗證它。 公共課程登錄頁面 WebDriver驅動程序{ ; By Click_loginbtn = By.className(「login-text」); By username = By.xpath(「// input [@ id ='email']」); //無法找到 By pwd = By。className(「input-text required-entry validate-password form-control」); //無法找到 通過login_btn = By.name(「send」); By homepage = By.className(「lazy img-responsive」); public Loginpage(WebDriver驅動程序) { this.driver = driver; (); } public void Click_loginbtn() { driver.findElement(Click_loginbtn).click(); } public void type_username() { driver.findElement(username).sendKeys(「xyz.com」); } public void type_pwd() { driver.findElement(pwd).sendKeys(「vkt123456」); } public void type_login_btn() { driver.findElement(login_btn).click(); }} 和 public class Verify_login { WebDriver driver; @BeforeMethod public void OpenBrowser()throws InterruptedException driver = new FirefoxDriver(); //啓動瀏覽器 driver.manage()。window()。maximize(); //最大化窗口 driver.manage()。timeouts()。implicitlyWait(60,TimeUnit.SECONDS); driver.get(「http://babysden.demo2clients.com/」); //導航到Url System.out.println(「網址正在出現」); Thread.sleep(2000); } @Test public void verifylogin()throws InterruptedException Loginpage lp = new Loginpage(driver); //製成登錄
的對象
lp.Click_loginbtn(); //calling loginbtn from LoginpAGE Class
Thread.sleep(1000);
System.out.println("Clicking on login btn");
lp.type_username(); //calling type_username from Loginpage Class
Thread.sleep(1000);
System.out.println("Enter username");
lp.type_pwd(); //calling type_pwd from Loginpage Class
Thread.sleep(1000);
System.out.println("Enter Password");
lp.type_login_btn(); //calling type_login_btn from Loginpage Class
Thread.sleep(1000);
System.out.println("Click on login");
}
分享您的HTML代碼,請 – zsbappa
讓我們知道您的AE試圖達到的目標。 – Kapil
分享HTML或URL以便我們追蹤它 – iamsankalp89