【问题标题】:Unable to create session while mocking Appium's behavior using WireMock使用 WireMock 模拟 Appium 的行为时无法创建会话
【发布时间】:2019-01-29 17:19:34
【问题描述】:

我正在尝试使用 WireMock 来模拟 Appium 的行为。

我面临的问题是:我的 POST 存根能够使用我设置的响应代码(我使用 Wireshark 进行监控)来响应我,但它会引发与会话创建相关的异常。

我已尝试创建会话以供参考的 POST 存根:

- 试验 1:

wireMockRule.stubFor(post(urlEqualTo("/wd/hub/session”)).

withRequestBody(matching(“JSON representation of set of desired capabilities specific to application"))

.willReturn(aResponse().
withStatus(200).

withHeader("Content-Type", "application/json”).

withBody("{\"sessionId\":\"e523dc70-c068-46e7-b966-8462401119b4\",\"status\":0,\"value\":\"Created Session\"}")));

结果:“无法创建新会话,因为未找到需要 HttpClient、InputStream 和 long 的 'createSession' 或无法访问”异常。

试用 2:刚刚从上面的存根中删除了请求正文

wireMockRule.stubFor(post(urlEqualTo("/wd/hub/session”))

.willReturn(aResponse().

withStatus(200).

withHeader("Content-Type", "application/json”).

withBody("{\"sessionId\":\"e523dc70-c068-46e7-b966-8462401119b4\",\"status\":0,\"value\":\"Created Session\"}")));

结果

org.openqa.selenium.SessionNotCreatedException:无法创建新的远程会话”异常。

环境参考:

Appium 的 Java 客户端:6.0.0

Selenium 独立服务器:3.12.0

Java 的 Selenium 客户端:3.12.0

请帮忙。

【问题讨论】:

    标签: automation mocking appium junit5 wiremock


    【解决方案1】:

    这似乎与 WireMock 无关?

    也许您可以切换到.NET version from WireMock 来模拟您的通话?

    【讨论】:

      猜你喜欢
      • 2023-03-21
      • 1970-01-01
      • 2015-01-06
      • 2018-03-05
      • 2022-01-16
      • 1970-01-01
      • 2017-09-10
      • 1970-01-01
      相关资源
      最近更新 更多