diff --git a/VectoCore/VectoCoreTest/Integration/DriverStrategy/SimpleCycles.cs b/VectoCore/VectoCoreTest/Integration/DriverStrategy/SimpleCycles.cs
index 9eff0ccf19e3f5ff26847a6fdf34fb8dc47ddd11..59af7d63b34b770217d608c78c6b02a07c580ee1 100644
--- a/VectoCore/VectoCoreTest/Integration/DriverStrategy/SimpleCycles.cs
+++ b/VectoCore/VectoCoreTest/Integration/DriverStrategy/SimpleCycles.cs
@@ -573,7 +573,7 @@ namespace TUGraz.VectoCore.Tests.Integration.DriverStrategy
 		public void AT_Gearbox_Special(string cycleData, string modFileName)
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(cycleData);
-			var run = ATPowerTrain.CreateEngineeringRun(cycle, modFileName);
+			var run = ATPowerTrain.CreateEngineeringRun(cycle, GearboxType.ATSerial, modFileName);
 
 			run.Run();
 			Assert.IsTrue(run.FinishedWithoutErrors);
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/ATGearboxTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/ATGearboxTest.cs
index 0ca69cc1a27f87457cdefae421bb15ef58526ba6..32533e33e92d5531e93729ef5876465b26fb87be 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/ATGearboxTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/ATGearboxTest.cs
@@ -1,10 +1,13 @@
 using NUnit.Framework;
 using TUGraz.VectoCommon.Models;
 using TUGraz.VectoCommon.Utils;
+using TUGraz.VectoCore.Configuration;
 using TUGraz.VectoCore.Models.Connector.Ports.Impl;
 using TUGraz.VectoCore.Models.Simulation.Impl;
 using TUGraz.VectoCore.Models.SimulationComponent.Data;
 using TUGraz.VectoCore.Models.SimulationComponent.Impl;
+using TUGraz.VectoCore.OutputData;
+using TUGraz.VectoCore.OutputData.FileIO;
 using TUGraz.VectoCore.Tests.Integration;
 using TUGraz.VectoCore.Tests.Utils;
 
@@ -26,7 +29,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 		TestCase(15, 300, 3),
 		TestCase(15, 600, 2),
 		TestCase(40, 100, 6),
-		TestCase(40, 300, 4),
+		TestCase(40, 300, 5),
 		TestCase(40, 600, 4),
 		TestCase(70, 100, 6),
 		TestCase(70, 300, 6),
@@ -54,81 +57,78 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.AreEqual(vehicleSpeed.IsEqual(0), gearbox.Disengaged);
 		}
 
-		[Test]
-		public void TestATGearboxDriveTorqueConverter()
+		[Test,
+		TestCase(GearboxType.ATSerial, TestName = "Drive TorqueConverter - Serial"),
+		TestCase(GearboxType.ATPowerSplit, TestName = "Drive TorqueConverter - PowerSplit")]
+		public void TestATGearboxDriveTorqueConverter(GearboxType gbxType)
 		{
 			var cycleData = @"   0,  0, 0,    2
-                                20,  8, 0,    0
+								20,  8, 0,    0
 							   200,  0, 0,    2";
 			var cycle = SimpleDrivingCycles.CreateCycleData(cycleData);
-			var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC.vmod");
+			var run = ATPowerTrain.CreateEngineeringRun(cycle, gbxType,
+				string.Format("AT_Vehicle_Drive-TC-{0}.vmod", gbxType==GearboxType.ATSerial ? "ser" : "ps"));
 
 			run.Run();
 			Assert.IsTrue(run.FinishedWithoutErrors);
 		}
 
-		[Test]
-		public void TestATGearboxShiftUp()
+		[Test,
+		TestCase(GearboxType.ATSerial, TestName = "ShiftUp TorqueConverter - Serial"),
+		TestCase(GearboxType.ATPowerSplit, TestName = "ShiftUp TorqueConverter - PowerSplit")]
+		public void TestATGearboxShiftUp(GearboxType gbxType)
 		{
 			var cycleData = @"  0,  0, 0,    2
 							  500, 40, 0,    0";
 			var cycle = SimpleDrivingCycles.CreateCycleData(cycleData);
-			var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_shiftup.vmod");
+			var run = ATPowerTrain.CreateEngineeringRun(cycle, gbxType,
+				string.Format("AT_Vehicle_Drive-TC_shiftup-{0}.vmod", gbxType==GearboxType.ATSerial ? "ser" : "ps"));
 
 			run.Run();
 			Assert.IsTrue(run.FinishedWithoutErrors);
 		}
 
-		[Test]
-		public void TestATGearboxShiftDown()
+		[Test,
+		TestCase(GearboxType.ATSerial, TestName = "ShiftDown TorqueConverter - Serial"),
+		TestCase(GearboxType.ATPowerSplit, TestName = "ShiftDown TorqueConverter - PowerSplit")]
+		public void TestATGearboxShiftDown(GearboxType gbxType)
 		{
 			var cycleData = @"  0, 70, 0,    0
 							  500,  0, 0,    2";
 			var cycle = SimpleDrivingCycles.CreateCycleData(cycleData);
-			var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_shiftdown.vmod");
-
-			run.Run();
-			Assert.IsTrue(run.FinishedWithoutErrors);
-		}
-
-
-		[Test]
-		public void TestATGearboxDriveUrban()
-		{
-			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Urban");
-			var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_Urban.vmod");
-
-			run.Run();
-			Assert.IsTrue(run.FinishedWithoutErrors);
-		}
-
-		[Test]
-		public void TestATGearboxDriveSuburban()
-		{
-			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Suburban");
-			var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_Suburban.vmod");
+			var run = ATPowerTrain.CreateEngineeringRun(cycle, gbxType,
+				string.Format("AT_Vehicle_Drive-TC_shiftdown-{0}.vmod", gbxType==GearboxType.ATSerial ? "ser" : "ps"));
 
 			run.Run();
 			Assert.IsTrue(run.FinishedWithoutErrors);
 		}
 
-		[Test]
-		public void TestATGearboxDriveInterurban()
-		{
-			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Interurban");
-			var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_Interurban.vmod");
-
-			run.Run();
-			Assert.IsTrue(run.FinishedWithoutErrors);
-		}
 
-		[Test]
-		public void TestATGearboxDriveHeavyurban()
+		[Test,
+		TestCase("Urban", GearboxType.ATSerial),
+		TestCase("Suburban", GearboxType.ATSerial),
+		TestCase("Interurban", GearboxType.ATSerial),
+		TestCase("HeavyUrban", GearboxType.ATSerial),
+		TestCase("Urban", GearboxType.ATPowerSplit),
+		TestCase("Suburban", GearboxType.ATPowerSplit),
+		TestCase("Interurban", GearboxType.ATPowerSplit),
+		TestCase("HeavyUrban", GearboxType.ATPowerSplit)
+		]
+		public void TestATGearboxDriveCycle(string cycleName, GearboxType gbxType)
 		{
-			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("HeavyUrban");
-			var run = ATPowerTrain.CreateEngineeringRun(cycle, "AT_Vehicle_Drive-TC_Heavyurban.vmod");
-
+			Assert.IsTrue(gbxType.AutomaticTransmission());
+			var cycle = SimpleDrivingCycles.ReadDeclarationCycle(cycleName);
+			var run = ATPowerTrain.CreateEngineeringRun(cycle, gbxType,
+				string.Format("AT_Vehicle_Drive-TC_{0}-{1}.vmod", cycleName, gbxType==GearboxType.ATSerial ? "ser" : "ps"));
+
+			var sumWriter =
+				new SummaryDataContainer(
+					new FileOutputWriter(string.Format("AT_Vehicle_Drive-TC_{0}-{1}", cycleName, gbxType == GearboxType.ATSerial ? "ser" : "ps")));
+			((VehicleContainer)run.GetContainer()).WriteSumData = (writer, mass, loading) =>
+				sumWriter.Write(run.GetContainer().ModalData, cycleName, string.Format("{0}-{1}", 0, 0),
+					cycleName + Constants.FileExtensions.CycleFile, mass, loading);
 			run.Run();
+			sumWriter.Finish();
 			Assert.IsTrue(run.FinishedWithoutErrors);
 		}
 	}