iOS:将 API 请求重定向到 Mock Server 以进行 XCUITesting
Posted
技术标签:
【中文标题】iOS:将 API 请求重定向到 Mock Server 以进行 XCUITesting【英文标题】:iOS: redirecting API request to Mock Server for XCUITesting 【发布时间】:2018-11-15 21:25:41 【问题描述】:我想知道是否有任何方法可以将我的所有 ios 应用程序 api 请求重定向/混合到我的模拟服务器(本地服务器)以进行 XCUITesting。 我想要实现的是,我不想做http://localhost:8080/request,而是将我的实际请求http://www.test.com/request重定向到http://localhost:8080/request。
【问题讨论】:
【参考方案1】:如果您在本地运行“XCUITest”,您可以使用代理工具(例如 CharlesProxy)将请求重定向到您的本地服务器。如果您只是在您的机器上进行开发和测试,这种方法可能工作得很好,但它并不倾向于在 CI 或远程服务器上工作。
另一种选择是在 XCUITestCase 启动应用程序之前将启动参数传递给您的应用程序。在应用程序中,您可以检查参数是否已通过,如果是,则可以使用本地主机基础 URL。这具有可以在自动化下远程完成的优势。有关详细信息,请参阅this SO 答案。
【讨论】:
谢谢。我们最终调整了 URLSession 并编写了自定义 json 以将其作为应用程序中的服务器运行。以上是关于iOS:将 API 请求重定向到 Mock Server 以进行 XCUITesting的主要内容,如果未能解决你的问题,请参考以下文章
Instagram API 阻止在成功登录后重定向到 iOS 应用程序并出现 400 错误请求错误
如何从 iOS 应用程序内将 GCDWebServer 请求重定向到外部主机
将 POST 请求从一个 REST API 转发/重定向到另一个