问题标签 [mockwebserver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
359 浏览

android - MockWebServer 不等待 N 秒返回存根响应

Android Espresso 的测试:

第一个版本

这里结果logcat:

正如你所看到的文本“ testMockServer_finish立即显示。不要等10秒。

第二个版本:

结果日志猫:

现在你可以看到文本“ testMockServer_finish在 10 秒后显示

为什么在第一个版本不等待 10 秒?

0 投票
1 回答
2098 浏览

android - MockWebServer - ConnectException:无法连接到

当我开始测试时,我得到连接异常,我不知道为什么。

我找到了一些其他作者的代码并比较了代码,我没有发现任何问题。我试图更改端口或将其删除,但对我没有帮助。

我没有发现任何奇怪的日志。

0 投票
2 回答
3683 浏览

okhttp - MockWebServer:java.lang.NoSuchMethodError

第一次在使用 Spock 进行单元测试的 Groovy/Spring 项目上尝试 MockWebServer。

我按照指示添加了 MockWebServer 依赖项(我必须自己添加第二行以避免错误,但没有记录:

我有一个基本的 Spock 测试,如下所示:

但它失败了这个输出:

我还缺少另一个依赖项吗?MockWebServer 不能很好地与 Groovy 和 Spock 配合使用吗?

对于它的价值,使用版本 3.1.4 似乎有效:

(我是第一次使用 MockWebServer)

谢谢!

0 投票
1 回答
46 浏览

android - okhttp:无法从静态上下文引用非静态方法 redirectsToGet(String)

更新了 androidTestImplementation 从

并开始得到:无法从静态上下文引用非静态方法 redirectsToGet(String)

0 投票
1 回答
8382 浏览

java - 如何在 JUnit 测试中将 MockWebServer 端口设置为 WebClient?

我正在使用spring-bootwith WebClient,它作为 bean 自动装配。

问题:编写junit集成测试时,我必须使用 okhttp MockWebServer。这个模拟总是在一个随机端口上启动,例如localhost:14321.

现在我WebClient当然有一个固定的 url,它将请求发送到。这个 url 可能由一个application.properties参数给出,所以我可以在测试webclient.url=https://my.domain.com/中覆盖该字段。junit但只是静态的。

问题:如何重置 a 中的WebClientbean@SpringBootTest以便它始终将请求发送到我的模拟服务器?

如您所见,我正在编写一个完整的真实世界 junit 集成测试。唯一的问题是:如何将MockWebServerurl 和端口传递给它,WebClient以便它自动将请求发送到我的模拟?

旁注:我这里肯定需要一个随机端口,MockWebServer以免干扰其他正在运行的测试或应用程序。因此必须坚持随机端口,并找到一种方法将其传递给网络客户端(或动态覆盖应用程序属性)。


更新:我想出了以下内容,这是可行的。但也许有人知道如何使 mockserver 字段非静态

0 投票
1 回答
780 浏览

mocking - MockWebServer 按路径条件排队?

我正在使用MockWebServerokhttp3 来针对模拟的外部网络服务器测试我的网络客户端。

我想配置模拟,以便通过 path 有条件地返回响应。

像伪代码:

那可能吗?

0 投票
0 回答
32 浏览

android - Android JUnit 测试接口

我这里有一个函数,它从 JSONplaceholder api 获取帖子列表。如果想对此功能进行测试,我该怎么做,我需要什么,Mockito,JUnit

请给我一些关于如何在 Android Studio 中进行测试的指示

谢谢R

0 投票
1 回答
61 浏览

android - 如何测试需要授权的屏幕?Espresso + MockWebServer

我正在创建 UI 测试。为了不与真实服务器交互,我使用了 MockWebServer。我的目标是模拟各种服务器响应并查看整个程序将如何响应它们。目前,我不明白如何打开需要授权的屏幕。当然,我可以编写一个登录到授权屏幕的代码,然后转到所需的窗口。但这需要额外的时间来完成测试,我想避免这种情况。我不想模拟类,因为我需要检查应用程序的生产版本。我怎样才能做到这一点?

对于 DI,我使用 Dagger-2。这是组件代码:

这是存储授权状态的类代码:

0 投票
1 回答
4543 浏览

java - 如何将 MockWebServer 中的响应分配给预期的请求?

我想创建一个集成测试并模拟一个远程 Web 服务,如下所示:

问题:我有一个案例,其中 3 个请求并行发送到远程。因此,顺序总是随机的。

问题:如何告诉 MockWebServer 将响应分配给预期的请求?

像伪代码:

那可能吗?

0 投票
1 回答
881 浏览

java - 如何从字符串反序列化请求多部分正文

我有一个代表multipart/form-data请求正文的字符串,我想解析它以便编写一个带有断言的单元测试。

我正在使用 springMultipartBodyBuilder来构建请求的主体。然后我想对此请求进行单元测试,所以我正在使用MockWebServer和调用takeRequest()

代码需要测试:

考试:

我不确定如何解析request.getBody()我可以检查的 into 对象。是否有用于多部分请求正文的解析器?