Как и в названии, я пытаюсь освоить тестирование автоматизации, и для своего теста я выбрал Skype, я настроил Android Studio и IntelliJ, использовал Appium и получил эту часть кода:
import io.appium.java_client.MobileElement;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import io.appium.java_client.remote.MobileCapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.Assert;
import java.net.MalformedURLException;
import java.net.URL;
public class skypeloginone {
public static void main(String args[]) throws MalformedURLException {
DesiredCapabilities dc = new DesiredCapabilities();
dc.setCapability(MobileCapabilityType.DEVICE_NAME, "emulator-5554");
dc.setCapability("platformName", "android");
dc.setCapability("appPackage", "com.skype.raider");
dc.setCapability("appActivity", ".Main");
dc.setCapability("noReset", "true");
AndroidDriver<AndroidElement> ad = new AndroidDriver<AndroidElement>(new URL("https://127.0.0.1:4723/wd/hub"), dc);
MobileElement el1 = (MobileElement) ad.findElementByXPath("//android.widget.Button[@content-desc=\"Let's go\"]/android.view.ViewGroup[2]");
el1.click();
MobileElement el2 = (MobileElement) ad.findElementByXPath("//android.widget.Button[@content-desc=\"Sign in or create\"]/android.view.ViewGroup[2]");
el2.click();
MobileElement el3 = (MobileElement) ad.findElementByAccessibilityId("Skype, phone, or email");
el3.sendKeys("email");
MobileElement el4 = (MobileElement) ad.findElementByAccessibilityId("Next");
el4.click();
MobileElement el7 = (MobileElement) ad.findElementByXPath("//android.webkit.WebView[@content-desc=\"Sign in to Skype\"]/android.view.View/android.view.View[2]/android.widget.EditText");
el7.sendKeys("password");
MobileElement el8 = (MobileElement) ad.findElementByAccessibilityId("Sign in");
el8.click();
MobileElement el9 = (MobileElement) ad.findElementByXPath("//android.widget.Button[@content-desc=\"Continue\"]/android.view.ViewGroup[1]");
el9.click();
MobileElement el10 = (MobileElement) ad.findElementById("com.android.packageinstaller:id/permission_allow_button");
el10.click();
MobileElement el11 = (MobileElement) ad.findElementByXPath("//android.widget.Button[@content-desc=\"Continue\"]/android.view.ViewGroup[1]");
el11.click();
MobileElement el12 = (MobileElement) ad.findElementById("com.android.packageinstaller:id/permission_allow_button");
el12.click();
MobileElement el13 = (MobileElement) ad.findElementById("com.android.packageinstaller:id/permission_allow_button");
el13.click();
Assert.assertEquals(ad.findElementByXPath("//android.view.ViewGroup[@content-desc=\"Selected. Chats, No unread notifications., Tab 1 of 3\"]/android.widget.TextView[2]").getText(),"Chats");
}
}
Но, запустив его, я получаю эту ошибку:
Исключение в потоке "main" org.openqa.selenium.SessionNotCreatedException: Невозможно создать новый удаленный сеанс. Исходная ошибка: неподдерживаемое или нераспознанное сообщение SSL Информация о сборке: версия: '3.141.59', редакция: 'e82be7d358', время: '2018-11-14T08: 25: 53' Информация о системе: хост: 'DESKTOP-R7G5CFQ', ip : '192.168.0.107', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10 .0 ', java .version: '11 .0.5' Информация о драйвере: драйвер. версия: AndroidDriver в io.appium.java_client.remote.AppiumCommandExecutor $ 1.createSession (AppiumCommandExecutor. java: 208) в io.appium.java_client.remote.AppiumCommandExecutor.createSession (AppiumCommand.ec) .java_client.remote.AppiumCommandExecutor.execute (AppiumCommandExecutor. java: 239) по адресу org.openqa.selenium.remote.RemoteWebDriver.execute (RemoteWebDriver. java: 552) по адресу io.appiumverenerGenDefender.jD . java: 41) в io.appium.java_client.AppiumDriver.execute (AppiumDriver. java: 1) в io.appium.java_client. android .AndroidDriver.execute (AndroidDriver. java: 1) в org.openqa.selenium.remote.RemoteWebDriv er.startSession (RemoteWebDriver. java: 213) в io.appium.java_client.AppiumDriver.startSession (AppiumDriver. java: 336) в org.openqa.selenium.remote.RemoteWebDriver. (RemoteWebDriver: 131. * 1048. * 1048). ) в io.appium.java_client.DefaultGenericMobileDriver. (DefaultGenericMobileDriver. java: 37) в io.appium.java_client.AppiumDriver. (AppiumDriver. java: 88) в io.appium.java_cliver .A. 1051 *: 98) на io.appium.java_client. android .AndroidDriver. (AndroidDriver. java: 94) на skypeloginone.main (skypeloginone. java: 23) Вызывается: java .lang.reflect .InvocationTargetException в java .base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в java .base / jdk.internal.reflect.NativeMethodAccessorImpl.invoke * NativeMethoccess * (10 1058). * .base / jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl. java: 43) в java .base / java .lang.reflect.Method.invoke (Метод. java: 566) в io.appium.java_client.remote.AppiumComman dExecutor $ 1.createSession (AppiumCommandExecutor. java: 186) ... еще 14 Причины: javax. net .ssl.SSLException: неподдерживаемое или нераспознанное сообщение SSL в java .base / sun.security.ssl.SSLSocketInputRecord .handleUnknownRecord (SSLSocketInputRecord. java: 439) в java .base / sun.security.ssl.SSLSocketInputRecord.decode (SSLSocketInputRecord. java: 184) в java .base / sun.security.ssl.SST. .decode (SSLTransport. java: 108) в java .base / sun.security.ssl.SSLSocketImpl.decode (SSLSocketImpl. java: 1152) в java .base / sun.security.ssl.SSLSocketImpl .readHandshakeRecord (SSLSocketImpl. java: 1063) в java .base / sun.security.ssl.SSLSocketImpl.startHandshake (SSLSocketImpl. java: 402) в okhttp3.internal.connection.RealConlsConnect.ConnectionConnect 1078 *: 318) по адресу okhttp3.internal.connection.RealConnection.establishProtocol (RealConnection. java: 282) по адресу okhttp3.internal.connection.RealConnection.connect (RealConnection. java: 167) по адресу okhttp3.internal.connection. StreamAllocation.findCo nnection (StreamAllocation. java: 257) в okhttp3.internal.connection.StreamAllocation.findHealthyConnection (StreamAllocation. java: 135) в okhttp3.internal.connection.StreamAllocation.newStream (StreamAllocation. java: 114): .internal.connection.ConnectInterceptor.intercept (ConnectInterceptor. java: 42) в okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain. java: 147) в okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain. java: 121) в okhttp3.internal.cache.CacheInterceptor.intercept (CacheInterceptor. java: 93) в okhttp3.internal.http.ChainInterter . java: 147) в okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain. java: 121) в okhttp3.internal.http.BridgeInterceptor.intercept (BridgeInterceptor. java: 93) в okhttp3.internal. http.RealInterceptorChain. 147) по адресу okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain. java: 121) по адресу okhttp3.RealCall.getResponseWithInterceptorChain (RealCall. java: 200) по адресу okhttp3.RealCall.ex. ) в org.openqa.selenium.remote.internal.OkHttpClient.execute (OkHttpClient. java: 103) в org .openqa.selenium.remote.ProtocolHandshake.createSession (ProtocolHandshake. java: 105) ... еще 19
Процесс завершен с кодом выхода 1
Это библиотеки I используется:
- byte-buddy-1.8.15
- commons-exe c -1.3
- commons-lang3-3.9
- commons -lang3-3.9-sources
- commons-lang3-3.9-tests
- commons-lang3-3.9-test-sources
- guava-25.0-jre, java - client-7.3.0
- okhttp-3.11.0, okio-1.14.0
- selenium-server-standalone-3.141.59
Я действительно не не знаю, как решить эту ошибку, кто-нибудь может мне помочь здесь?