小编use*_*841的帖子

如何使用SBT Jenkins插件进行ScalaTest测试的特定测试

目前,我们正在使用IntelliJ,Scala,SBT在我们当地的环境中启动测试.使用SBT命令行,我们可以按照此处的说明指定特定的测试,套件,通配符:

ScalaTest.org

比如"仅测试*RedSuite"

但是在我们的CI Jenkins服务器上,通过SBT插入,在指定时,它会出错.

在操作字段中,使用了以下值:

操作:编译test-only test.package.name

使用以下内容适用于所有测试:

行动:编译测试

[success] Total time: 240 s, completed Apr 28, 2014 12:29:36 PM
[error] Expected ID character
[error] Not a valid command: org (similar: export)
[error] Expected project ID
[error] Expected configuration
[error] Expected ':' (if selecting a configuration)
[error] Expected key
[error] Not a valid key: org (similar: fork, run, doc)
[error] org.company.scalatest.abc.regressionsuite
[error]    ^
Build step 'Build using sbt' changed build result to FAILURE
Build step 'Build using sbt' marked …
Run Code Online (Sandbox Code Playgroud)

sbt scalatest jenkins

5
推荐指数
1
解决办法
2619
查看次数

使用Scala Dispatch Library禁用SSL

我目前正在将所有Rest测试移动到CI服务器,并注意到所有测试都因SSL握手而失败,现在我已经使用我们的Java测试套件成功禁用了TrustManager,但我不确定如何使用Scala调度库来完成它,并且还没有找到可以在这种情况下应用的许多示例.

val JSONstr = "{samplekey:samplevalue}"
val response:String = Http(url("https://www.host.com/path/to/post") 
                    << (checkInJSONstr, "application/json") as_str) 
Run Code Online (Sandbox Code Playgroud)

正如预期发生以下异常:

javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated at     com.sun.net.ssl.internal.ssl.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:352)
...
Run Code Online (Sandbox Code Playgroud)

有没有办法干净地语法上忽略使用调度库的SSL?

ssl https scala scala-dispatch

4
推荐指数
1
解决办法
885
查看次数

WebClient ExchangeFilterFunction 无法添加标头 java.lang.UnsupportedOperationException ReadOnlyHttpHeaders

我正在尝试向 WebClient 请求添加一个简单的 ExchangeFilterFunction。但是,我看到以下异常:

java.lang.UnsupportedOperationException
    at org.springframework.http.ReadOnlyHttpHeaders.add(ReadOnlyHttpHeaders.java:84)
    at com.ecs.springframework.reactive.web.filter.AddHeaderExchangeFilter.filter(AddHeaderExchangeFilter.java:24)
    at org.springframework.web.reactive.function.client.ExchangeFilterFunction.lambda$apply$2(ExchangeFilterFunction.java:66)
    at org.springframework.web.reactive.function.client.DefaultWebClient$DefaultRequestBodyUriSpec.exchange(DefaultWebClient.java:319)
    at com.ecs.springframework.reactive.web.filter.AddHeaderExchangeFilterTest.whenExchangeFilterFunctionInjectedIntoWebClient_thenWebClientShouldPropagate(AddHeaderExchangeFilterTest.java:57)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:532)
    at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:115)
    at 
Run Code Online (Sandbox Code Playgroud)

交换过滤功能

    public class AddHeaderExchangeFilter implements ExchangeFilterFunction {

      @Override
      public Mono<ClientResponse> filter(ClientRequest request, ExchangeFunction next) {

        ClientRequest newRequest = ClientRequest.create(request.method(), request.url()).build();
        newRequest.headers().add("EFF-TEST-HEADER", "EFF-TEST-VALUE");
        return next.exchange(newRequest);
      }
    }
Run Code Online (Sandbox Code Playgroud)


        WebClient webTestClient = WebClient.builder().filter(new AddHeaderExchangeFilter()).build();

    webTestClient.get().uri("http://httpbin.org/get").exchange();
Run Code Online (Sandbox Code Playgroud)

我对 WebFlux 比较陌生,所以任何指点都将不胜感激。

spring-boot project-reactor spring-webflux

3
推荐指数
1
解决办法
8745
查看次数