diff --git a/TestCodeGenerator/Tests.cs b/TestCodeGenerator/Tests.cs
index bdd7f41048afe6e25c8c21c808f04fc62f789349..c8f33a03382f00a4a89fa590b3f75048a1b46a72 100644
--- a/TestCodeGenerator/Tests.cs
+++ b/TestCodeGenerator/Tests.cs
@@ -78,7 +78,7 @@ namespace TestCodeGenerator
         [Test]
         public void TestIf()
         {
-            Assert.AreEqual("3", TestHelper.GenerateNRun(@"begin var a; a := 0; if a then write(2) else write(3) end"));
+            Assert.AreEqual("3", TestHelper.GenerateNRun(@"begin var a1; a1 := 0; if a1 then write(2) else write(3) end"));
             
             Assert.AreEqual("3", TestHelper.GenerateNRun(@"begin var x,y; x := 1; y := x-1; if x then if y then write(2) else write(3) end"));
         }
@@ -86,13 +86,13 @@ namespace TestCodeGenerator
         [Test]
         public void TestWhile()
         {
-            Assert.AreEqual("1024", TestHelper.GenerateNRun(@"begin var a,b; b:=1; a:=10; while a do begin a:=a-1; b:=b*2; end; write(b) end"));
+            Assert.AreEqual("1024", TestHelper.GenerateNRun(@"begin var a2,b2; b2:=1; a2:=10; while a2 do begin a2:=a2-1; b2:=b2*2; end; write(b2) end"));
         }
         
         [Test]
         public void TestUntil()
         {
-            Assert.AreEqual("1024", TestHelper.GenerateNRun(@"begin var a,b; b:=1; a:=10; repeat a:=a-1; b:=b*2 until a; write(b) end"));
+            Assert.AreEqual("1024", TestHelper.GenerateNRun(@"begin var a3,b3; b3:=1; a3:=10; repeat a3:=a3-1; b3:=b3*2 until a3; write(b3) end"));
         }
     }
 }
\ No newline at end of file
diff --git a/TestVisitors/Tests.cs b/TestVisitors/Tests.cs
index c73110f0634db59582d7ddee1fa6cf21f7bb4d43..8485ce9801bb2fd0df9f4bf737718f06a608b9aa 100644
--- a/TestVisitors/Tests.cs
+++ b/TestVisitors/Tests.cs
@@ -1,4 +1,5 @@
 using System;
+using System.Security.Cryptography;
 using NUnit.Framework;
 using SimpleScanner;
 using SimpleParser;
@@ -6,7 +7,7 @@ using SimpleLang.Visitors;
 
 namespace TestVisitors
 {
-    public class TestHelpers
+    public class ParserTest
     {
         public static Parser Parse(string text)
         {
@@ -19,12 +20,12 @@ namespace TestVisitors
     }
     
     [TestFixture]
-    public class TestAvgOpCount
+    public class TestAvgOpCount: ParserTest
     {
         [Test]
         public void NoLoopTest()
         {
-            Parser p = TestHelpers.Parse(@"begin end ");
+            Parser p = Parse(@"begin end ");
             Assert.IsTrue(p.Parse());
             var avgCounter = new CountCyclesOpVisitor();
             p.root.Visit(avgCounter);
@@ -34,7 +35,7 @@ namespace TestVisitors
         [Test]
         public void ThreeLoopsTest()
         {
-            Parser p = TestHelpers.Parse(@"begin
+            Parser p = Parse(@"begin
        var a,b,d;
        b := 2;
        a := 3;
@@ -70,36 +71,36 @@ namespace TestVisitors
     }
     
     [TestFixture]
-    public class TestCommonVariable
+    public class TestCommonVariable: ParserTest
     {
         [Test]
         public void OneVarTest()
         {
-            Parser p = TestHelpers.Parse(@"begin var a; a:=2; a:=a+2*a-3; a:=3; end ");
+            Parser p = Parse(@"begin var a0; a0:=2; a0:=a0+2*a0-3; a0:=3; end ");
             Assert.IsTrue(p.Parse());
             var varCounter = new CommonlyUsedVarVisitor();
             p.root.Visit(varCounter);
-            Assert.AreEqual("a", varCounter.mostCommonlyUsedVar());            
+            Assert.AreEqual("a0", varCounter.mostCommonlyUsedVar());            
         }
         
         [Test]
         public void ManyVarTest()
         {
-            Parser p = TestHelpers.Parse(@"begin var a,b,c; a:=2+c-b; b:=a+2*a-3-b+b-b+b+b; b:=c-3+b-3; end ");
+            Parser p = Parse(@"begin var a1,b1,c1; a1:=2+c1-b1; b1:=a1+2*a1-3-b1+b1-b1+b1+b1; b1:=c1-3+b1-3; end ");
             Assert.IsTrue(p.Parse());
             var varCounter = new CommonlyUsedVarVisitor();
             p.root.Visit(varCounter);
-            Assert.AreEqual("b", varCounter.mostCommonlyUsedVar());            
+            Assert.AreEqual("b1", varCounter.mostCommonlyUsedVar());            
         }
     }
     
     [TestFixture]
-    public class TestExprComplexity
+    public class TestExprComplexity: ParserTest
     {
         [Test]
         public void AssignTest()
         {
-            Parser p = TestHelpers.Parse(@"begin var a; a:=2+2; a:=a+2*a-3; a:=3; end ");
+            Parser p = Parse(@"begin var a2; a2:=2+2; a2:=a2+2*a2-3; a2:=3; end ");
             Assert.IsTrue(p.Parse());
             var exprMeter = new ExprComplexityVisitor();
             p.root.Visit(exprMeter);
@@ -110,7 +111,7 @@ namespace TestVisitors
         [Test]
         public void CycleTest()
         {
-            Parser p = TestHelpers.Parse(@"begin var a; cycle 2+2/3 a:=2-2 end ");
+            Parser p = Parse(@"begin var a3; cycle 2+2/3 a3:=2-2 end ");
             Assert.IsTrue(p.Parse());
             var exprMeter = new ExprComplexityVisitor();
             p.root.Visit(exprMeter);
@@ -121,7 +122,7 @@ namespace TestVisitors
         [Test]
         public void WriteTest()
         {
-            Parser p = TestHelpers.Parse(@"begin write(2+2-3) end ");
+            Parser p = Parse(@"begin write(2+2-3) end ");
             Assert.IsTrue(p.Parse());
             var exprMeter = new ExprComplexityVisitor();
             p.root.Visit(exprMeter);
@@ -135,7 +136,7 @@ namespace TestVisitors
             [Test]
             public void OneLoopTest()
             {
-                Parser p = TestHelpers.Parse(@"begin cycle 2 write(2) end");
+                Parser p = Parse(@"begin cycle 2 write(2) end");
                 Assert.IsTrue(p.Parse());
                 var loopCounter = new MaxNestCyclesVisitor();
                 p.root.Visit(loopCounter);
@@ -145,7 +146,7 @@ namespace TestVisitors
             [Test]
             public void ThreeLoopsTest()
             {
-                Parser p = TestHelpers.Parse(@"begin cycle 2 cycle 3 cycle 4 write(5) end");
+                Parser p = Parse(@"begin cycle 2 cycle 3 cycle 4 write(5) end");
                 Assert.IsTrue(p.Parse());
                 var loopCounter = new MaxNestCyclesVisitor();
                 p.root.Visit(loopCounter);
@@ -155,14 +156,14 @@ namespace TestVisitors
             [Test]
             public void LoopTreeTest()
             {
-                Parser p = TestHelpers.Parse(@"begin var a; 
+                Parser p = Parse(@"begin var a6; 
                                                     cycle 2 
                                                         cycle 1 
-                                                            a:=2; 
+                                                            a6:=2; 
                                                         cycle 3 
                                                             cycle 5 
                                                                 cycle 6 
-                                                                    a:=5; 
+                                                                    a6:=5; 
                                                                 cycle 4 
                                                                     write(5) 
                                               end");
@@ -177,14 +178,14 @@ namespace TestVisitors
     }
 
     [TestFixture]
-    public class TestVariableRenamer 
+    public class TestVariableRenamer: ParserTest 
     {
         [Test]
         public void SimpleTest()
         {
-            Parser p = TestHelpers.Parse(@"begin var a; a:=2; a:=a+2*a-3; a:=3; end ");
+            Parser p = Parse(@"begin var a4; a4:=2; a4:=a4+2*a4-3; a4:=3; end ");
             Assert.IsTrue(p.Parse());
-            var varRenamer = new ChangeVarIdVisitor("a", "z");
+            var varRenamer = new ChangeVarIdVisitor("a4", "z");
             p.root.Visit(varRenamer);
             
             var varCounter = new CommonlyUsedVarVisitor();
@@ -194,12 +195,12 @@ namespace TestVisitors
     }
     
     [TestFixture]
-    public class TestIfCycleNest 
+    public class TestIfCycleNest: ParserTest
     {
         [Test]
         public void FirstTest()
         {
-            Parser p = TestHelpers.Parse(@"begin var a; cycle 3 if 1 then cycle 4 a := 1 end ");
+            Parser p = Parse(@"begin var a5; cycle 3 if 1 then cycle 4 a5 := 1 end ");
             Assert.IsTrue(p.Parse());
             var nestWalker = new MaxIfCycleNestVisitor();
             p.root.Visit(nestWalker);