diff --git a/internal/bigquery/bigquery.go b/internal/bigquery/bigquery.go
index 35d42b8..309b415 100644
--- a/internal/bigquery/bigquery.go
+++ b/internal/bigquery/bigquery.go
@@ -58,14 +58,14 @@
 
 func (c *Client) Close() (err error) {
 	if c.deleteDatasetOnClose {
-		err = c.dataset.Delete(context.Background())
+		err = c.dataset.DeleteWithContents(context.Background())
 	}
 	return errors.Join(err, c.client.Close())
 }
 
 // NewClientForTesting creates a client with a new, unique dataset. Closing the client deletes the dataset.
-func NewClientForTesting(ctx context.Context, projectID string) (*Client, error) {
-	dsID := fmt.Sprintf("test_%s", time.Now().Format("20060102T030405"))
+func NewClientForTesting(ctx context.Context, projectID, testID string) (*Client, error) {
+	dsID := fmt.Sprintf("test_%s_%s", testID, time.Now().Format("20060102T030405"))
 	c, err := NewClientCreate(ctx, projectID, dsID)
 	if err != nil {
 		return nil, err
diff --git a/internal/vulndb/vulndb_test.go b/internal/vulndb/vulndb_test.go
index 48c193b..d2c15c9 100644
--- a/internal/vulndb/vulndb_test.go
+++ b/internal/vulndb/vulndb_test.go
@@ -47,7 +47,7 @@
 	ctx := context.Background()
 	const projectID = "go-ecosystem"
 
-	client, err := bigquery.NewClientForTesting(ctx, projectID)
+	client, err := bigquery.NewClientForTesting(ctx, projectID, "read_recent_db")
 	if err != nil {
 		t.Fatal(err)
 	}
diff --git a/internal/vulndbreqs/bq_test.go b/internal/vulndbreqs/bq_test.go
index a41d97d..48baf69 100644
--- a/internal/vulndbreqs/bq_test.go
+++ b/internal/vulndbreqs/bq_test.go
@@ -30,7 +30,7 @@
 	ctx := context.Background()
 	const projectID = "go-ecosystem"
 
-	client, err := bigquery.NewClientForTesting(ctx, projectID)
+	client, err := bigquery.NewClientForTesting(ctx, projectID, "bigquery")
 	if err != nil {
 		t.Fatal(err)
 	}
