调用AppiumDriverLocalService类中的start()方法启动appium server端,在启动后会有状态监测的步骤,如下:

URL status = new URL(url.toString() + "/status");
new UrlChecker().waitUntilAvailable(time, timeUnit, status);

其中waitUntilAvailable()方法部分实现细节如下:

connection = connectToUrl(url);
if (connection.getResponseCode() == HttpURLConnection.HTTP_OK) {
      return null;
 }

其中connectToUrl(url)细节:

HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setConnectTimeout(CONNECT_TIMEOUT_MS);
connection.setReadTimeout(READ_TIMEOUT_MS);
connection.connect();
return connection;

此处的READ_TIMEOUT_MS为读取响应的超时时间,默认设置为1000ms,但我在本地起服务,响应时间为1700ms,所以每次 server 启动都会失败,如何解决?


↙↙↙阅读原文可查看相关链接,并与作者交流