Mongodb 删除操作无法使用Jmeter中的groovy删除mongo中的文档

Mongodb 删除操作无法使用Jmeter中的groovy删除mongo中的文档,mongodb,groovy,jmeter,Mongodb,Groovy,Jmeter,我正在尝试删除我使用以下代码使用deleteone和deletemany通过脚本创建的文档: import com.mongodb.client.MongoCollection; import org.bson.Document; import static com.mongodb.client.model.Filters.*; import org.bson.Document; import org.bson.types.ObjectId; import java.util.Arrays; i

我正在尝试删除我使用以下代码使用deleteone和deletemany通过脚本创建的文档:

import com.mongodb.client.MongoCollection;
import org.bson.Document;
import static com.mongodb.client.model.Filters.*;
import org.bson.Document;
import org.bson.types.ObjectId;
import java.util.Arrays;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoClient;
import com.mongodb.MongoClientSettings;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;



try {

String mongoUser = vars.get("mongouser");
String userDB = vars.get("userdb");
char[] password = vars.get("password").toCharArray();
MongoCredential credential = MongoCredential.createCredential(mongoUser, userDB, password);
MongoClientSettings settings = MongoClientSettings.builder()
.applyToClusterSettings {builder -> 
builder.hosts(Collections.singletonList(new ServerAddress(vars.get("mongohost"), vars.get("mongoPort") as int)))}
.credential(credential)
.build();
MongoClient mongoClient = MongoClients.create(settings);


MongoDatabase database = mongoClient.getDatabase(vars.get("databaseName"));
MongoCollection<Document> collection = database.getCollection(vars.get("collectionName1"));
vars.putObject("collection1", collection);

    collection.deleteone(eq("EmployeeName", "Test Automation through Jmeter"));

    return "Document deleted";
}
catch (Exception e) {
    SampleResult.setSuccessful(false);
    SampleResult.setResponseCode("500");
    SampleResult.setResponseMessage("Exception: " + e);}
SimpleEncodingFilter)值:[过滤器{fieldName='EmployeeName',值=通过Jmeter的测试自动化}] 可能的解决方案:deleteOne(org.bson.conversions.bson)、deleteOne(com.mongodb.ClientSession、org.bson.conversions.bson)、deleteOne(org.bson.conversions.bson、com.mongodb.client.model.DeleteOptions)、deleteOne(com.mongodb.client.ClientSession、org.bson.conversions.bson、com.mongodb.client.model.DeleteOptions)、deleteMany(org.bson.conversions.bson),deleteMany(com.mongodb.client.ClientSession,org.bson.conversions.bson)


我做错了什么?

我认为该方法称为
deleteOne
,而不是
deleteOne
,因此正确的调用方式应该是:

collection.deleteOne(eq("EmployeeName", "Test Automation through Jmeter"));
另请参见
MongoCollection
的javadocs:

collection.deleteOne(eq("EmployeeName", "Test Automation through Jmeter"));