Selendroid: Элемент не найден и ссылка на идентификатор элемента, который я не прошел

Привет я пользуюсь selendroid чтобы проверить мое приложение, но я получаю сообщение об ошибке в том, что идентификатор элемента не найден, и идентификатор, отображаемый в ошибке, не передается мной нигде в моем коде.

Ниже приведен след TestNG log:

org.openqa.selenium.StaleElementReferenceException: элемент с идентификатором '749f7f36-cf23-cf8a-3ba4-089302016ab6' не найден. Продолжительность или время ожидания команды: 23 миллисекунды. Чтобы получить документацию по этой ошибке, посетите страницу: http://seleniumhq.org/exceptions/stale_element_reference.html Информация о сборке: версия: "неизвестно", редакция: "неизвестно", время: "неизвестно" Система информация: хост: "admin-PC", ip: "172.25.14.100", os.name: "Windows 7", os.arch: "x86", os.version: "6.1", java.version: "1.7.0_21'ID сеанса: 75f030b7-cad7-9f00-452d-b29017e502cb Информация о драйвере: io.selendroid.SelendroidDriver Возможности [{automaName=selendroid, платформа = ЛЮБОЙ, имя_платформы =android, browserName=selendroid, эмулятор = ложь, aut=in.my:2.3}] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(собственный метод) в sun.reflect.NativeConstructorAccessorImpl.newInstance(неизвестный источник) в sun.reflect.DelegatingConstructorAccessorImpl.newInstance.NewInst.fl. Неизвестный источник) в java (Неизвестный источник) в org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:204) в org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:156) в org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:599) в org.openqa.selenium.remote.RemoteWebElement.execute.jpg (в удаленном филиале): удаленный пользовательский интерфейс ".invoke (Неизвестный источник) по адресу sun.reflect.DelegatingMethodAccessorImpl.invoke(Неизвестный источник) по адресу java.lang.reflect.Method.invoke(Неизвестный источник) по адресу org.testng.internal.MethodInvocationHelper.invokeMethod: MethodInvocation (MethodInvocation org.testng.internal.Invoker.invokeMethod(Invoker.java:648) в org.testng.internal.Invoker.invokeTestMethod(Invoker.java:834) в org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1142) в org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:124) в org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108) в org.testng.TestRunner.privateRun(TestRunner.java:771) в org.testng.TestRunner.run(TestRunner.java:621) в org.testng.run SuiteRunner.java:357) в org.testng.SuiteRunner.runSequentially(SuiteRunner.java:352) в org.testng.SuiteRunner.privateRun(SuiteRunner.java:310) в org.testng.SuiteRunner.run(SuiteRunner.java)) в org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) в org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) в org.testng.TestNG.runSuitesSequentially(TestNG.jtest).TestNG.runSuitesLocally(TestNG.java:1101) в org.testng.TestNG.run(TestNG.java:1009) в org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111) в org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204) в org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175) Причина: io.selendroid.server.common.exceptions.StaleElementReferenceException: элемент с идентификатором 749f cf 749f -cf8a-3ba4-0893 02016ab6 'не найдено.

Я добавляю код для драйвера, и тестовое исключение происходит в recharge_btn Я бы

private SelendroidDriver driver;
    @BeforeClass
        public void setUp() throws Exception {
            SelendroidConfiguration config = new SelendroidConfiguration();
            config.addSupportedApp("myapp.apk");
    //      SelendroidLauncher selendroidServer = new SelendroidLauncher(config);
    //      selendroidServer.launchSelendroid();
            capa = new SelendroidCapabilities("in.myapp:2.3");
            // capa.setAut("io.selendroid.testapp:0.15.0");
            // capa.setPlatformVersion(DeviceTargetPlatform.ANDROID19);
            capa.setEmulator(false);
            driver = new SelendroidDriver(capa);
        }
@Test
    public void bRechargePrepaid() throws Exception {
//      driver = new SelendroidDriver(capa);
        System.out.println("Starting Prepaid Recharge");
        driver.get(PREPAID_RECHARGE_ACTIVITY);
        // WebElement rechargeList = driver.findElement(By.linkText("Prepaid"));
        // rechargeList.click();

//      File file = new File("D:/prepaidRecharge.txt");
//      fr = new FileReader(file);
//      br = new BufferedReader(fr);
//      String fileLine = "";
//      try {
//          while ((fileLine = br.readLine()) != null) {

                WebElement element = driver.findElement(By
                        .id("mobile_number_edit"));
                element.sendKeys("9780325188");
                element = driver.findElement(By.id("amount_edit"));
                element.clear();
                element.sendKeys("100");
                element = driver.findElement(By.id("edt_operator"));
                element.click();
                element = driver
                        .findElement(By.linkText("VODAFONE"));
                element.click();
                Thread.sleep(2000);
                element = driver.findElement(By.id("recharge_btn"));
                element.click();
                element = driver.findElement(By.id("button1"));
                element.click();
                Thread.sleep(15000);
                driver.navigate().back();

//          }
//      } finally {
//          br.close();
//          fr.close();
//      }

        Thread.sleep(10000);

    }

0 ответов

Другие вопросы по тегам