diff --git a/Rendering/Core/Testing/Cxx/TestColorTransferFunctionStringArray.cxx b/Rendering/Core/Testing/Cxx/TestColorTransferFunctionStringArray.cxx
index f46dbb6a486ff20710ab86f6c70b2d507c57064e..75b70d23a21b5659eb0a9d2d0f308add85090043 100644
--- a/Rendering/Core/Testing/Cxx/TestColorTransferFunctionStringArray.cxx
+++ b/Rendering/Core/Testing/Cxx/TestColorTransferFunctionStringArray.cxx
@@ -13,6 +13,7 @@
 
 =========================================================================*/
 #include <vtkColorTransferFunction.h>
+#include <vtkSmartPointer.h>
 #include <vtkStdString.h>
 #include <vtkStringArray.h>
 #include <vtkUnsignedCharArray.h>
@@ -20,7 +21,7 @@
 
 int TestColorTransferFunctionStringArray(int vtkNotUsed(argc), char* vtkNotUsed(argv)[])
 {
-  vtkStringArray* sArray = vtkStringArray::New();
+  vtkSmartPointer<vtkStringArray> sArray = vtkSmartPointer<vtkStringArray>::New();
   const int numStrings = 6;
   sArray->SetNumberOfValues(numStrings);
   sArray->SetName("TestArray");
@@ -39,7 +40,7 @@ int TestColorTransferFunctionStringArray(int vtkNotUsed(argc), char* vtkNotUsed(
     std::cout << sArray->GetValue(i) << "\n";
     }
 
-  vtkColorTransferFunction* tfer = vtkColorTransferFunction::New();
+  vtkSmartPointer<vtkColorTransferFunction> tfer = vtkSmartPointer<vtkColorTransferFunction>::New();
   tfer->IndexedLookupOn();
 
   // Need to set some nodes to avoid prematurely returning from
@@ -54,9 +55,6 @@ int TestColorTransferFunctionStringArray(int vtkNotUsed(argc), char* vtkNotUsed(
 
   vtkUnsignedCharArray* colors = tfer->MapScalars(sArray, VTK_RGBA, -1);
 
-  tfer->Delete();
-  sArray->Delete();
-
   unsigned char expectedColors[numStrings][4] = {
     {0, 0, 0, 255},
     {255, 0, 0, 255},
diff --git a/Rendering/Core/Testing/Cxx/TestDiscretizableColorTransferFunctionStringArray.cxx b/Rendering/Core/Testing/Cxx/TestDiscretizableColorTransferFunctionStringArray.cxx
index 501bfeddb8f2678cba605385108c01f8bdd50718..7250b099d98fcb163772b6631b6e6febbf34dad7 100644
--- a/Rendering/Core/Testing/Cxx/TestDiscretizableColorTransferFunctionStringArray.cxx
+++ b/Rendering/Core/Testing/Cxx/TestDiscretizableColorTransferFunctionStringArray.cxx
@@ -13,6 +13,7 @@
 
 =========================================================================*/
 #include <vtkDiscretizableColorTransferFunction.h>
+#include <vtkSmartPointer.h>
 #include <vtkStdString.h>
 #include <vtkStringArray.h>
 #include <vtkUnsignedCharArray.h>
@@ -20,7 +21,7 @@
 
 int TestDiscretizableColorTransferFunctionStringArray(int vtkNotUsed(argc), char* vtkNotUsed(argv)[])
 {
-  vtkStringArray* sArray = vtkStringArray::New();
+  vtkSmartPointer<vtkStringArray> sArray = vtkSmartPointer<vtkStringArray>::New();
   const int numStrings = 6;
   sArray->SetNumberOfValues(numStrings);
   sArray->SetName("TestArray");
@@ -39,7 +40,8 @@ int TestDiscretizableColorTransferFunctionStringArray(int vtkNotUsed(argc), char
     std::cout << sArray->GetValue(i) << "\n";
     }
 
-  vtkDiscretizableColorTransferFunction* tfer = vtkDiscretizableColorTransferFunction::New();
+  vtkSmartPointer<vtkDiscretizableColorTransferFunction> tfer =
+    vtkSmartPointer<vtkDiscretizableColorTransferFunction>::New();
   tfer->IndexedLookupOn();
 
   tfer->SetNumberOfIndexedColors(3);
@@ -52,9 +54,6 @@ int TestDiscretizableColorTransferFunctionStringArray(int vtkNotUsed(argc), char
 
   vtkUnsignedCharArray* colors = tfer->MapScalars(sArray, VTK_RGBA, -1);
 
-  tfer->Delete();
-  sArray->Delete();
-
   unsigned char expectedColors[numStrings][4] = {
     {0, 0, 0, 255},
     {255, 0, 0, 255},