问题标签 [spray-test]

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 回答
5162 浏览

spray - 如何在 SprayTest 中使用 json 主体模拟 POST 请求?

如果我有一个像这样解组 json 的端点:

如何使用喷雾测试规范进行测试:

这显然是行不通的,原因有几个。正确的方法是什么?

0 投票
0 回答
111 浏览

scala - 我可以在喷涂路线测试中修改子切割模块吗?

我有一个 Specs2RouteTest

我确认在测试中设置了修改后的绑定。但是一旦它进入路线,我就会看到在测试模块中设置的绑定。通常,这种 modifyBindings{} 技术似乎可以使测试保持隔离,并且当我进行单元测试时,我可以交换依赖项没问题...但是在这些集成测试中,我似乎无法使被测路由拾取任何绑定修改。我在做一些明显错误的事情吗?

0 投票
1 回答
381 浏览

scala - Scalatest 和 SprayIO 失败

我的测试套件有问题。无论我做什么,我总是得到相同的错误信息Request was not handled

这是我的测试套件:

这是我对该服务的路线:

我不知道出了什么问题,我不想使用另一个测试框架。因为大多数带有喷雾测试的示例都是用 Spec2 编写的。也许我错过了一些东西。

0 投票
1 回答
2345 浏览

scala - 用于测试路线的基本 Spray-Testkit 用法不起作用

我正在尝试使用喷涂路线并想使用 Spray-TestKit 对其进行测试。我正在使用: - Scala 2.10.3 - Akka 2.3.3 - Spray 1.3.1

我创建了一个扩展 HttpService 的特征,我在其中定义了一个路由:

我删除了部分不相关的路线。CoreAccess 是一个扩展 Actor 的 trait,因为我在该 trait 中有访问 ActorSystem 的方法。(我不知道谁在不扩展演员的情况下从特征中检索 ActorSelection )

然后我创建一个测试规范

当我尝试执行测试时,出现以下编译错误:

0 投票
0 回答
93 浏览

spray - 如何仅使用 pathEnd 添加路由的测试用例

我有路线

我正在尝试像这样为这条路线添加一个测试用例

但我越来越

谁能告诉我如何为这条路线编写测试用例?提前致谢。

0 投票
1 回答
492 浏览

scala - 如何在“Specs2RouteTest”中使用“最终”

这里有两个规格。首先是不通过,因为eventuallyincheck不会导致整个路线重新运行,但这是我更愿意遵循的方式。第二个规范是我找到的最好的解决方案(并证明它是可行的;))但它包含一些样板,如附加函数,在现实生活中必须返回元组而不是单一的东西,它与喷雾测试语法设计不一致测试路线。

所以问题是: 如何使用eventually喷雾测试尽可能接近第一个规范的语法。

0 投票
0 回答
368 浏览

scala - 喷雾和演员非确定性测试

Helo,一开始我想为我的英语道歉:)

akka=2.3.6
spray=1.3.2
scalatest=2.2.1

我遇到了 teting 路由的奇怪行为,它在 handleWith 指令中询问演员,
我使用 handleWith 指令进行路由


和简单的演员 wchich 总是在接收对象数据时响应并且有自己的接收块包装在 LoggingReceive 中,所以当演员接收消息时我应该看到日志

我使用(我认为简单的代码)对其进行测试


和行为:
当我运行包中的所有测试(使用 Intellij Idea 14 Ultimate)或 sbt 测试时,我遇到相同的结果
一次执行 -> 所有测试都通过
,下一个 -> 不是全部通过,这不通过我可以看到:
1. 失败,因为请求在 X 秒内既没有完成也没有被拒绝( X up tp 60)
2. 系统控制台输出来自线路 post(handleWith { (data: Data) =>{ println("receiving data"), so code在 handleWith 中执行
3. 从路由代码中询问超时异常,但并不总是(在失败的测试中)
4. 演员 LoggingReceive 没有日志,所以演员没有机会响应
5. 当我重新运行测试时,结果甚至与以前不同

线程有问题吗?或测试模块,库内的线程阻塞?还是别的什么?我不知道为什么它不起作用:(

0 投票
1 回答
333 浏览

scala - Spray.io test response not matching actual output

I'm trying to set up some tests for an API made by a coworker with spray.io, and I'm encountering some odd behavior. When a request results in an error for any reason, we want to return a JSON value along the lines of:

This happens just fine in the actual browser. I have navigated to an unhandled route in the web browser, and I get the desired JSON value. So, I want to test this. Now, since I'm new to spray.io, I started off with the very simple test:

This went fine, no problems. Since it's my first time playing with spray.io, I looked at some of the sample tests for testing false routes, and wrapped myRoute with sealRoute() so I could check the response without failing tests:

This also works fine. So, I decided to just make sure the text of the response was usable with this, before I went to the trouble of parsing JSON and verifying individual values:

This is failing. To investigate, I threw a simple line of code in to log the actual value of responseAs[String] to a file, and I got this:

Can anyone tell me what I'm doing wrong? I'm thinking that one of the following is occurring:

  • responseAs[String] is doing more than taking the exact response and giving it back to me, applying some type of filter along the way
  • The framework itself is not fully evaluating the query, but rather making a mockup object for the test framework to evaluate, and therefore not executing the desired 'turn errors to json' methods that my co-worker has implemented

I have tried searching google and stack overflow specifically for similar issues, but I'm either not putting in the right queries, or most other people are content to have the default error messages and aren't trying to test them beyond checking handled must beFalse.

Edit - This is the relevant part of the RejectionHandler:

0 投票
1 回答
769 浏览

scala - 喷雾测试 gzip 解码

我尝试为喷雾编写测试

我有跟随路由器

我使用 GZIP 压缩进行响应,但是

无法解组对responseAs断言的类型“java.lang.String”的响应:MalformedContent(unknown token Near: ,Some(org.json4s.ParserUtil$ParseException: unknown token Near: ))

如何将自动解码 GZIP HttpResponse 设置为字符串?

0 投票
7 回答
4795 浏览

scala - 如何修复参数 ta 缺失的隐式值:测试规范中的 TildeArrow

我正在使用 Spray 编写一个简单的测试规范,但我无法正确编译它,不知道我是否做错了什么。我的 scala 版本是 2.9.3 和 spray 1.0.1(更新它们中的任何一个都不是合适的选择)。这是我的测试规范的代码:

运行测试时出现此错误。

我已经尝试过在其他问题上看到的不同解决方案,但到目前为止似乎没有任何效果。

Spray.io:无法编译测试规范

如何使用 spraytestkit 和 HttpServiceActor 使 scalatest 工作

用于测试路线的基本 Spray-Testkit 用法不起作用

https://groups.google.com/forum/#!topic/spray-user/H5hkXuDGWYQ

https://groups.google.com/forum/#!topic/spray-user/zFUJSVBPM5c

注意:为了记录,我没有使用 scalatest 或 scalacheck 。纯粹是[spray]路由测试。而MyProxy扩展了Actor