Mongodb 我在Jmeter中的groovy脚本执行时没有错误,但它无法在Mongo DB中插入文档,可能是什么问题?

Mongodb 我在Jmeter中的groovy脚本执行时没有错误,但它无法在Mongo DB中插入文档,可能是什么问题?,mongodb,jmeter,Mongodb,Jmeter,我用Jmeter编写了以下脚本,用于在MongoDB中插入文档。我的脚本执行成功,但它没有执行所需的任务,即没有在数据库中插入记录。我错过了什么?有人能帮忙吗 import com.mongodb.client.MongoClients; import com.mongodb.client.MongoClient; import com.mongodb.MongoClientSettings; import com.mongodb.client.MongoCollection; import c

我用Jmeter编写了以下脚本,用于在MongoDB中插入文档。我的脚本执行成功,但它没有执行所需的任务,即没有在数据库中插入记录。我错过了什么?有人能帮忙吗

import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoClient;
import com.mongodb.MongoClientSettings;
import com.mongodb.client.MongoCollection;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import org.bson.Document;
import java.util.Arrays;
try {
MongoClientSettings settings = MongoClientSettings.builder()
.applyToClusterSettings {builder -> 
builder.hosts(Arrays.asList(new ServerAddress(vars.get("mongoHost"),vars.get("mongoPort").toInteger())))}
.build();
MongoClient mongoClient = MongoClients.create(settings);
MongoDatabase database = mongoClient.getDatabase(vars.get("databaseName"));
MongoCollection<Document> collection = database.getCollection(vars.get("collectionName"));
vars.putObject("collection", collection);
return "Connected to " + vars.get("collectionName");




//String json = ('{"EmployeeOID":12345,"EmployeeName":"Test Automation through Jmeter","Employee_Type_OID":4,"Rank":0,"Rating":0,"Score":0,"Supervisor_OID":56789,"TRGEmpID":"012345T"}');
//DBObject insertEmployee = (DBObject)JSON.parse(json);


BasicDBObject insertEmployee = new BasicDBObject();
    insertEmployee.put("EmployeeOID",12345);
    insertEmployee.put("EmployeeName", "Test Automation through Jmeter");
    insertEmployee.put("Employee_Type_OID",4);
        insertEmployee.put("Rank",0);
            insertEmployee.put("Rating",0);
                insertEmployee.put("Score",0);
                    insertEmployee.put("Supervisor_OID",56789);
                        insertEmployee.put("CompanyID","012345T");


    collection.insert(insertEmployee);

    DBCursor cursorDoc = collection.find();
    while (cursorDoc.hasNext()) {
        System.out.println(cursorDoc.next());

    }


    }
    catch (Exception e) {
    SampleResult.setSuccessful(false);
    SampleResult.setResponseCode("500");
    SampleResult.setResponseMessage("Exception: " + e);
    }
导入com.mongodb.client.MongoClients;
导入com.mongodb.client.MongoClient;
导入com.mongodb.MongoClientSettings;
导入com.mongodb.client.MongoCollection;
导入com.mongodb.ServerAddress;
导入com.mongodb.client.MongoCollection;
导入com.mongodb.client.MongoDatabase;
导入com.mongodb.BasicDBObject;
导入com.mongodb.DBObject;
导入com.mongodb.DBCursor;
导入org.bson.Document;
导入java.util.array;
试一试{
MongoClientSettings=MongoClientSettings.builder()
.applyToClusterSettings{builder->
builder.hosts(Arrays.asList(新服务器地址(vars.get(“mongoHost”)、vars.get(“mongoPort”).toInteger()))
.build();
MongoClient MongoClient=MongoClients.create(设置);
MongoDatabase=mongoClient.getDatabase(vars.get(“databaseName”);
MongoCollection collection=database.getCollection(vars.get(“collectionName”);
变量putObject(“集合”,集合);
返回“连接到”+vars.get(“collectionName”);
//字符串json=(“{“EmployeeOID”:12345,“EmployeeName”:“通过Jmeter的测试自动化”,“员工类型”OID:4,“等级”:0,“评级”:0,“分数”:0,“主管OID”:56789,“TRGEmpID:“012345T”}”);
//DBObject insertEmployee=(DBObject)JSON.parse(JSON);
BasicDBObject insertEmployee=新的BasicDBObject();
插入employee.put(“EmployeeOID”,12345);
insertEmployee.put(“EmployeeName”,“通过Jmeter实现测试自动化”);
插入Employee.put(“Employee\u Type\u OID”,4);
insertEmployee.put(“秩”,0);
插入员工。放置(“评级”,0);
插入员工。放置(“分数”,0);
插入员工。put(“主管”,56789);
插入员工。输入(“公司ID”,“012345T”);
收集。插入(插入员工);
DBCursor cursorDoc=collection.find();
while(cursorDoc.hasNext()){
System.out.println(cursorDoc.next());
}
}
捕获(例外e){
SampleResult.setSuccessful(假);
采样器结果设置响应代码(“500”);
SampleResult.setResponseMessage(“异常:+e”);
}
您的脚本中有,在此阶段执行结束。
return
关键字下面的行将永远不会执行,因此您无法看到插入的对象,因为代码没有运行

删除此行:

return "Connected to " + vars.get("collectionName");
您的脚本应该按预期开始工作(或者至少开始失败)


更多信息:

我评论了这句话,但运气不好:(脚本仍在传递,但DBI中没有插入内容)我没有足够的心灵感应能力在不看到细节的情况下猜出错误,因此这里有2个提示:1.添加侦听器并检查“采样器结果”选项卡是否有任何错误。2.检查任何可疑条目(您可能希望为
com启用调试日志记录。mongodb
包已旧