diff --git a/test/test_transaction.cpp b/test/test_transaction.cpp
index 329e19c97463d4112b5c62fbe3c165a94fbcb982..fa56528efaa8df15f15e3b64ee3580213f385a65 100644
--- a/test/test_transaction.cpp
+++ b/test/test_transaction.cpp
@@ -1271,4 +1271,26 @@ TEST_F(test_transaction, test_full_workflow) {
   EXPECT_EQ(retr_transaction->GetResultSet().size(), 1);
 }
 
+TEST_F(test_transaction, test_delete_string_id) {
+  const auto &connection =
+    caosdb::connection::ConnectionManager::GetDefaultConnection();
+  auto transaction(connection->CreateTransaction());
+
+  transaction->DeleteById("20");
+  transaction->DeleteById("string");
+  transaction->DeleteById("21");
+
+  transaction->ExecuteAsynchronously();
+  transaction->WaitForIt();
+
+  EXPECT_TRUE(transaction->GetStatus().IsTerminated());
+  EXPECT_TRUE(transaction->GetStatus().IsError());
+  const auto &results = transaction->GetResultSet();
+  EXPECT_FALSE(results.at(0).HasErrors());
+  EXPECT_TRUE(results.at(1).HasErrors());
+  EXPECT_EQ(results.at(1).GetErrors().size(), 1);
+  EXPECT_EQ(results.at(1).GetErrors().at(0).GetDescription(), "Entity does not exist.");
+  EXPECT_FALSE(results.at(2).HasErrors());
+}
+
 } // namespace caosdb::transaction