diff --git a/tests/gtest_main.cpp b/tests/gtest_main.cpp
index 6c5023b..99cd4ee 100644
--- a/tests/gtest_main.cpp
+++ b/tests/gtest_main.cpp
@@ -319,18 +319,6 @@
   fflush(stdout);
 }
 
-static void TestcaseTimePrint(const TestCase& testcase) {
-  int64_t testcase_time = 0;
-  for (size_t i = 0; i < testcase.TestCount(); ++i) {
-    testcase_time += testcase.GetTestTime(i);
-  }
-  printf("%zu %s from %s (%lld ms total)\n", testcase.TestCount(),
-                                             (testcase.TestCount() == 1) ? "test" : "tests",
-                                             testcase.GetName().c_str(),
-                                             testcase_time / 1000000LL);
-  fflush(stdout);
-}
-
 static void OnTestIterationEndPrint(const std::vector<TestCase>& testcase_list, size_t /*iteration*/,
                                     int64_t elapsed_time) {
 
@@ -364,10 +352,6 @@
     }
   }
 
-  for (auto const& testcase : testcase_list) {
-    TestcaseTimePrint(testcase);
-  }
-
   ColoredPrintf(COLOR_GREEN,  "[==========] ");
   printf("%zu %s from %zu %s ran.", test_count, (test_count == 1) ? "test" : "tests",
                                     testcase_count, (testcase_count == 1) ? "test case" : "test cases");
