问题标签 [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 投票
1 回答
1651 浏览

android - 带有 Retrofit 和 Dagger 的 MockWebServer

我试图为我的 android 项目实施仪器测试。在我的主要项目中,我使用了 dagger 和改造,并从我的模块中提供改造。

这是我提供改造的模块:

然后,在我的 androidTest 文件夹中,我创建了 TestModule 来提供 MockWebServer 的改造,如下所示:

当我运行我的测试时,我总是android.os.NetworkOnMainThreadException在 code 处得到错误.baseUrl(mockWebServer.url("/").toString())。带有改造和匕首测试的正确实现 MockWebServer 是如何实现的?

0 投票
1 回答
1619 浏览

android - Android MockWebServer 调度程序问题

在我的MockWebServer我使用两个不同的调度程序。一种LocalResponseDispatcher用于本地添加响应,另一种用于将QueueDispatcher一些存根响应排队。我在两个之间切换时遇到了问题。事实上,当我尝试使用.setDispatcher()网络服务器答案时,总是与前一个响应一起使用。你有同样的问题吗?

0 投票
0 回答
1145 浏览

android - Espresso 测试无法匹配 TextView 的文本

我正在学习Espresso,我想测试 a 是否TextView显示我从服务器获得的字符串。对于我正在使用的服务器MockWebServer。我将响应作为 json 字符串存储到androidTestsourceSet 中的 assets 文件夹中。

我正在使用的代码是:

虽然我看到结果显示在我的屏幕上(我在上面代码的最后一行添加了一个断点),这意味着 textView 显示 text = "square",但 espresso 测试失败。

日志猫:

我不确定这里有什么问题。是我的Espresso代码错了吗?我想MockWebServer代码是正确的,因为我在屏幕上看到了结果。

XML 布局文件:

0 投票
0 回答
124 浏览

android - 用于开发的模拟 Web 服务器

我很好奇是否有人使用像 MockWebServer 这样的工具进行一般开发?

我使用 MockWebServer 来运行仪器测试。在测试情况下,它非常易于使用,因为您可以将每个测试方法所需的响应排入队列。

我觉得它对于尚未开发端点但您仍想开始客户端开发并且不一定想要运行仪器的 TDD 方法的一般开发(不运行仪器测试)很有用每次您想尝试正在开发的功能时进行测试。

有没有人以这种方式使用 MockWebServer(或类似工具)的经验?它有什么陷阱吗?

0 投票
1 回答
5315 浏览

java - 为什么我要使用 MockWebServer 而不是 WireMock?

每次我需要模拟一些 http 请求时,我的第一选择是 WireMock(我认为这实际上是标准的),但今天我发现了一些替代工具 - MockWebServer。

WireMockMockWebServer的优缺点是什么?

0 投票
1 回答
1790 浏览

android - Android espresso - 如何使用 dagger2 注入依赖项

使用 dagger2 将依赖项注入 espresso 测试是我想做的。

我想要一种能够使用 dagger 为我的测试用例提供依赖项的方法。

特别是我想用匕首注入一个MockwebServer类。这是怎么做到的?我的项目已经设置了匕首。它现在是一个组件,单个组件有 5 个模块,如下所示:

它工作正常。但是现在当我移动到 androidTest 文件夹进行 espresso 测试时,我将如何使用以下组件:

我一直在做什么将 AppTestComponent 保留在主源代码中,但它不能以这种方式看到 MYTESTCLASS ?

我想注入我的类的原因是,我想在将 mockWebServer 类传递给改造为 baseurl 之后注入它,如下所示:

测试网络模块.java:

通过这种方式,我可以获得 MockWebServer 的参考并在我的测试中使用它并对其进行改造,这样我就可以进行快速集成测试

同样在 gradle 中,我正在使用以下依赖项,请确认:

0 投票
0 回答
186 浏览

unit-testing - OkHttp3 MockWebServer 与 IdlingResource

MockWebServer有没有将 a与a 结合起来的标准方法IdlingResource?我想一个人必须实现一个自定义MockDispatcher,但要走的路并不那么明显。有人试过吗?

0 投票
0 回答
726 浏览

spring-test - 无法使用 MockWebServiceServer 设置多个期望

我正在使用 MockWebServiceServer 来测试 REST API。我使用@Runwith(Parameterized.class) 将值传递给它。

当我只有 1 个输入时,代码工作正常。

但是当我有多个输入时它会抛出异常。

我正在使用 Spring 3.2。我想用多个输入测试我的 api。

0 投票
0 回答
396 浏览

java - 使用 Robolectric 和 Retrofit 运行最新的 MockWebServer

大约一年前,我编写了一个 Android 应用程序,在这个技术堆栈上进行了测试。现在我正在开发新的应用程序并使用所有最新版本的库,并坚持将来自 Robolectric 测试的 Web 请求传递给 MockWebServer。

Junit 上的简单版本工作正常,但只要我将测试转换为 Robolectric 测试或通过 new TestScheduler() 添加 subscribeOn\observeOn (等于 Scheulers.immediate() 以在同一线程中立即获得响应)改造请求不会进入 MockWebDispatcher。

这是代码

构建梯度

关于问题根源的任何想法?

我检查了我以前的,它适用于这个库集,API 测试运行良好

这就是为什么我假设新版本的库中引入的行为会发生一些变化

0 投票
1 回答
1311 浏览

angular - 如何在 Angular2 中模拟后端数据

我一直在尝试使用 Angular2 发布模拟数据。我今天尝试了以下链接,但没有成功。

https://www.beyondjava.net/blog/mocking-http-services-with-angular-genericly/


下面的链接很好,但我无法使用它

https://github.com/cornflourblue/angular2-registration-login-example/blob/master/app/_helpers/fake-backend.ts

http://embed.plnkr.co/9luTng/?show=preview

在上面的链接中有fake-backend.ts文件,如 app/_helpers/fake-backend.ts

我在 app.module.ts 中包含的假后端但是如何使用它?

所以我想使用如下数据请求数据进行注册:-

我的回应应该如下: -

HTML模板如下:-

我的注册服务如下:-

我不想在 localStorage 中存储任何东西,而只是想在注册时得到一个响应,就像上面的响应一样。