我遇到了与JSONObject连接的问题.
@Test
public void toUrlTest() throws JSONException {
String url;
JSONObject json = new JSONObject();
json.put"id", 1);
json.put("email", "test@hotmail.com");
url = JSONParser.toURLString(json);
assertEquals("id=1&email=test@hotmail.com", url);
}
Run Code Online (Sandbox Code Playgroud)
问题是当我调试此测试时,它显示没有任何内容放到json对象上.
json ={org.json.JSONObject@826}"null"
我检查了一切,我不知道为什么会发生这种情况.JSONObject在app中运行良好.它只在测试时发生.
PS.我在build.gradle中添加了这个
testOptions {
unitTests.returnDefaultValues = true
}
Run Code Online (Sandbox Code Playgroud) com.mongodb.MongoSocketOpenException: Exception opening socket
at com.mongodb.internal.connection.SocketStream.open(SocketStream.java:70) ~[mongodb-driver-core-3.11.2.jar:na]
at com.mongodb.internal.connection.InternalStreamConnection.open(InternalStreamConnection.java:128) ~[mongodb-driver-core-3.11.2.jar:na]
at com.mongodb.internal.connection.DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:117) ~[mongodb-driver-core-3.11.2.jar:na]
at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
Run Code Online (Sandbox Code Playgroud)
我的代码:
gradle.build
testImplementation "org.testcontainers:spock:1.14.3"
testImplementation "org.testcontainers:mongodb:1.14.3"
Run Code Online (Sandbox Code Playgroud)
应用程序属性
spring.data.mongodb.uri=mongodb://127.0.0.1:27017/test
Run Code Online (Sandbox Code Playgroud)
测试
@Testcontainers
class TestContainersExample extends IntegrationSpec {
@Shared
MongoDBContainer mongoDb = new MongoDBContainer()
def "setup"() {
mongoDb.start()
mongoDb.waitingFor(Wait.forListeningPort()
.withStartupTimeout(Duration.ofSeconds(180L)));
}
//test case
}
Run Code Online (Sandbox Code Playgroud) integration-testing mongodb spock spring-boot testcontainers