diff --git a/test/cpp/qps/driver.cc b/test/cpp/qps/driver.cc
index 88d4d52abc08c6291d15bb7a753529a4845185e6..4458e389e7efdf10c49328b6297da1aa533cb2fd 100644
--- a/test/cpp/qps/driver.cc
+++ b/test/cpp/qps/driver.cc
@@ -285,8 +285,7 @@ std::unique_ptr<ScenarioResult> RunScenario(
     if (!servers[i].stream->Read(&init_status)) {
       gpr_log(GPR_ERROR, "Server %zu did not yield initial status", i);
     }
-    if (qps_server_target_override != NULL &&
-        strlen(qps_server_target_override) > 0) {
+    if (qps_server_target_override.length() > 0) {
       // overriding the qps server target only works if there is 1 server
       GPR_ASSERT(num_servers == 1);
       client_config.add_server_targets(qps_server_target_override);
diff --git a/test/cpp/qps/qps_worker.h b/test/cpp/qps/qps_worker.h
index 32ff98da9b793a1d80995ea76a91d059fe3a813a..5c1d1a8ae64eacdf96d8b4ed480b4f62b022ebf1 100644
--- a/test/cpp/qps/qps_worker.h
+++ b/test/cpp/qps/qps_worker.h
@@ -22,6 +22,7 @@
 #include <memory>
 
 #include <grpc/support/atm.h>
+#include <grpc++/support/config.h>
 
 namespace grpc {