Jhipster 香草酱:罐装';t运行测试(SocketTimeOut异常)
我用JHipster和gradle和mongoDB choice生成了一个新的应用程序。 格雷德尔编译得很好:Jhipster 香草酱:罐装';t运行测试(SocketTimeOut异常),jhipster,Jhipster,我用JHipster和gradle和mongoDB choice生成了一个新的应用程序。 格雷德尔编译得很好: c:\webs\workspace-jhipster\jpoc>gradle clean compileJava compileTestJava :clean :cleanResources UP-TO-DATE :bootBuildInfo :nodeSetup SKIPPED :npmSetup SKIPPED :webpackBuildDev SKIPPED :pr
c:\webs\workspace-jhipster\jpoc>gradle clean compileJava compileTestJava
:clean
:cleanResources UP-TO-DATE
:bootBuildInfo
:nodeSetup SKIPPED
:npmSetup SKIPPED
:webpackBuildDev SKIPPED
:processResources
:compileJava
:classes
:compileTestJava
BUILD SUCCESSFUL
Total time: 6.704 secs
当我希望运行单个测试时,问题出现了:
gradle test --tests com.jpoc.service.UserServiceIntTest
哪些产出:
com.jpoc.service.UserServiceIntTest > assertThatUserMustExistToResetPassword FAILED
java.lang.IllegalStateException
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException
Caused by: org.springframework.beans.factory.BeanCreationException
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException
Caused by: org.springframework.beans.factory.BeanCreationException
Caused by: org.springframework.beans.BeanInstantiationException
Caused by: de.flapdoodle.embed.process.exceptions.DistributionException
Caused by: java.io.IOException
Caused by: java.net.SocketTimeoutException
我很确定这是一个配置错误的问题,但我不知道是哪一个
我使用最新的jhipster 4.2.0
谢谢。要使用spring boot在测试套件中设置mongoDB代理,我举个例子:
@BeforeClass
public static void setup_mongo() throws UnknownHostException, IOException{
String proxyHost = "proxy.priv.atos.fr";
String proxyPort = "3128";
String proxy = System.getenv("http_proxy");
System.out.println("Proxy URL : " + proxy);
if(proxy != null){
if(proxyHost == null && proxyPort == null){
URL proxyurl = new URL(proxy);
proxyHost = proxyurl.getHost();
proxyPort = String.valueOf(proxyurl.getPort());
}
}
MongodStarter starter ;
System.out.println("Proxy Host : " + proxyHost);
System.out.println("Proxy Port : " + proxyPort);
if (proxyHost != null && proxyPort != null) {
IRuntimeConfig runtimeConfig = new RuntimeConfigBuilder().defaults(Command.MongoD)
.artifactStore(
new ArtifactStoreBuilder().defaults(Command.MongoD)
.download(
new DownloadConfigBuilder()
.defaultsForCommand(Command.MongoD)
.proxyFactory(
new HttpProxyFactory(
proxyHost,
Integer.parseInt(proxyPort)))
.build()).build()).build();
starter = MongodStarter.getInstance(runtimeConfig);
} else {
starter = MongodStarter.getDefaultInstance();
}
IMongodConfig mongodConfig = new MongodConfigBuilder()
.version(Version.Main.PRODUCTION)
.net(new Net(0, Network.localhostIsIPv6())).build();
MongodExecutable mongodExecutable = null;
mongodExecutable = starter.prepare(mongodConfig);
mongodExecutable.start();
}
像这样,它下载mongoDB服务器并尝试运行它。下一个问题是我没有权限在JVM内运行此可执行文件。问题是嵌入式mongoDB试图下载mongoDB的服务器部分。当我通过代理时,我需要配置它。