Это мой тестовый код Eclipse
package com.example;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.SessionId;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.MobileBy;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import io.appium.java_client.remote.AndroidMobileCapabilityType;
import io.appium.java_client.remote.MobileCapabilityType;
public class FirstAppiumTest {
//protected AndroidDriver<AndroidElement> driver = null;
public AppiumDriver driver;
@BeforeTest
public void Setup() throws MalformedURLException
{String url = "http://127.0.0.1:4723/wd/hub";
DesiredCapabilities cap=new DesiredCapabilities();
cap.setCapability("noReset","true");
cap.setCapability("deviceName","Redmi 4");
cap.setCapability("platformVersion","7.1.2");
cap.setCapability("platformName","Android");
cap.setCapability("app","C:\\Appium\\selendroid-test-app.apk");
driver=new AndroidDriver(new URL(url),cap);
}
@Test
public void Simpletest() throws InterruptedException
{
driver.manage().timeouts().implicitlyWait(50,TimeUnit.SECONDS);
//driver.findElement(By.className("android.widget.Button")).click();
WebElement e1=driver.findElement(By.id("showToastButton"));
e1.click();
System.out.print(e1);
String text=driver.findElement(By.className("android.widget.EditText")).getText();
System.out.print(text);
String src = driver.getPageSource();
System.out.println(src);
driver.quit();
}
}
Здесь, когда я пытаюсь напечатать e1, он показывает мне значение объекта. Но когда я пытаюсь щелкнуть или getText, он показывает исключение. Также работает driver.quit и driver.getPageSource ().
Лог в консоли выглядит следующим образом
[RemoteTestNG] обнаружен TestNG версии 6.14.2
27 апреля 2018 11:16:16 org.openqa.selenium.remote.ProtocolHandshake createSession
ИНФОРМАЦИЯ: Обнаруженный диалект: OSS
Не удалось: самый простой
java.lang.NullPointerException
в org.openqa.selenium.remote.RemoteWebElement.execute (RemoteWebElement.java:279)
в org.openqa.selenium.remote.RemoteWebElement.click (RemoteWebElement.java:83)
в com.example.FirstAppiumTest.Simpletest (FirstAppiumTest.java:56)
at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод)
at sun.reflect.NativeMethodAccessorImpl.invoke (неизвестный источник)
at sun.reflect.DelegatingMethodAccessorImpl.invoke (неизвестный источник)
в java.lang.reflect.Method.invoke (Неизвестный источник)
в org.testng.internal.MethodInvocationHelper.invokeMethod (MethodInvocationHelper.java:124)
в org.testng.internal.Invoker.invokeMethod (Invoker.java:580)
в org.testng.internal.Invoker.invokeTestMethod (Invoker.java:716)
в org.testng.internal.Invoker.invokeTestMethods (Invoker.java:988)
в org.testng.internal.TestMethodWorker.invokeTestMethods (TestMethodWorker.java:125)
в org.testng.internal.TestMethodWorker.run (TestMethodWorker.java:109)
в org.testng.TestRunner.privateRun (TestRunner.java:648)
в org.testng.TestRunner.run (TestRunner.java:505)
в org.testng.SuiteRunner.runTest (SuiteRunner.java:455)
на org.testng.SuiteRunner.runSequentially (SuiteRunner.java:450)
в org.testng.SuiteRunner.privateRun (SuiteRunner.java:415)
в org.testng.SuiteRunner.run (SuiteRunner.java:364)
на org.testng.SuiteRunnerWorker.runSuite (SuiteRunnerWorker.java:52)
на org.testng.SuiteRunnerWorker.run (SuiteRunnerWorker.java:84)
на org.testng.TestNG.runSuitesSequentially (TestNG.java:1208)
в org.testng.TestNG.runSuitesLocally (TestNG.java:1137)
на org.testng.TestNG.runSuites (TestNG.java:1049)
на org.testng.TestNG.run (TestNG.java:1017)
на org.testng.remote.AbstractRemoteTestNG.run (AbstractRemoteTestNG.java:114)
в org.testng.remote.RemoteTestNG.initAndRun (RemoteTestNG.java:251)
atg.testng.remote.RemoteTestNG.main (RemoteTestNG.java:77)
===============================================
Тест по умолчанию
Выполнено тестов: 1, сбоев: 1, пропусков: 0
Набор по умолчанию
Всего тестов выполнено: 1, сбоев: 1, пропусков: 0