diff --git a/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs b/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs
index d84384e365b1006a50d318467cddad9c160d0b27..f966466bc147709040cb3bcf519342b9ee3d3766 100644
--- a/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs
+++ b/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs
@@ -8,7 +8,6 @@ using TUGraz.VectoCore.Models.Connector.Ports.Impl;
 using TUGraz.VectoCore.Models.Declaration;
 using TUGraz.VectoCore.Models.Simulation.Data;
 using TUGraz.VectoCore.Models.Simulation.Impl;
-using TUGraz.VectoCore.Models.SimulationComponent;
 using TUGraz.VectoCore.Models.SimulationComponent.Data;
 using TUGraz.VectoCore.Models.SimulationComponent.Data.Gearbox;
 using TUGraz.VectoCore.Models.SimulationComponent.Impl;
@@ -50,13 +49,13 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns
 			var vehicleContainer = new VehicleContainer(modalWriter, sumWriter);
 
 			var driver = new Driver(vehicleContainer, driverData);
-			dynamic tmp = AddComponent(driver, new Vehicle(vehicleContainer, vehicleData));
-			tmp = AddComponent(tmp, new Wheels(vehicleContainer, vehicleData.DynamicTyreRadius));
-			tmp = AddComponent(tmp, new AxleGear(vehicleContainer, axleGearData));
+			dynamic tmp = Port.AddComponent(driver, new Vehicle(vehicleContainer, vehicleData));
+			tmp = Port.AddComponent(tmp, new Wheels(vehicleContainer, vehicleData.DynamicTyreRadius));
+			tmp = Port.AddComponent(tmp, new AxleGear(vehicleContainer, axleGearData));
 
-			tmp = AddComponent(tmp, new Clutch(vehicleContainer, engineData));
+			tmp = Port.AddComponent(tmp, new Clutch(vehicleContainer, engineData));
 			var engine = new CombustionEngine(vehicleContainer, engineData);
-			AddComponent(tmp, engine);
+			Port.AddComponent(tmp, engine);
 
 			var gbx = new MockGearbox(vehicleContainer);
 
@@ -100,13 +99,13 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns
 
 			var cycle = new DistanceBasedDrivingCycle(vehicleContainer, cycleData);
 
-			dynamic tmp = AddComponent(cycle, new Driver(vehicleContainer, driverData));
-			tmp = AddComponent(tmp, new Vehicle(vehicleContainer, vehicleData));
-			tmp = AddComponent(tmp, new Wheels(vehicleContainer, vehicleData.DynamicTyreRadius));
-			tmp = AddComponent(tmp, new Breaks(vehicleContainer));
-			tmp = AddComponent(tmp, new AxleGear(vehicleContainer, axleGearData));
-			tmp = AddComponent(tmp, new Clutch(vehicleContainer, engineData));
-			AddComponent(tmp, new CombustionEngine(vehicleContainer, engineData));
+			dynamic tmp = Port.AddComponent(cycle, new Driver(vehicleContainer, driverData));
+			tmp = Port.AddComponent(tmp, new Vehicle(vehicleContainer, vehicleData));
+			tmp = Port.AddComponent(tmp, new Wheels(vehicleContainer, vehicleData.DynamicTyreRadius));
+			tmp = Port.AddComponent(tmp, new Breaks(vehicleContainer));
+			tmp = Port.AddComponent(tmp, new AxleGear(vehicleContainer, axleGearData));
+			tmp = Port.AddComponent(tmp, new Clutch(vehicleContainer, engineData));
+			Port.AddComponent(tmp, new CombustionEngine(vehicleContainer, engineData));
 
 			var gbx = new MockGearbox(vehicleContainer);
 
@@ -181,13 +180,13 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns
 
 			var cycle = new DistanceBasedDrivingCycle(vehicleContainer, cycleData);
 
-			dynamic tmp = AddComponent(cycle, new Driver(vehicleContainer, driverData));
-			tmp = AddComponent(tmp, new Vehicle(vehicleContainer, vehicleData));
-			tmp = AddComponent(tmp, new Wheels(vehicleContainer, vehicleData.DynamicTyreRadius));
-			tmp = AddComponent(tmp, new Breaks(vehicleContainer));
-			tmp = AddComponent(tmp, new AxleGear(vehicleContainer, axleGearData));
-			tmp = AddComponent(tmp, new Clutch(vehicleContainer, engineData));
-			AddComponent(tmp, new CombustionEngine(vehicleContainer, engineData));
+			dynamic tmp = Port.AddComponent(cycle, new Driver(vehicleContainer, driverData));
+			tmp = Port.AddComponent(tmp, new Vehicle(vehicleContainer, vehicleData));
+			tmp = Port.AddComponent(tmp, new Wheels(vehicleContainer, vehicleData.DynamicTyreRadius));
+			tmp = Port.AddComponent(tmp, new Breaks(vehicleContainer));
+			tmp = Port.AddComponent(tmp, new AxleGear(vehicleContainer, axleGearData));
+			tmp = Port.AddComponent(tmp, new Clutch(vehicleContainer, engineData));
+			Port.AddComponent(tmp, new CombustionEngine(vehicleContainer, engineData));
 
 			var gbx = new MockGearbox(vehicleContainer);
 
@@ -291,44 +290,5 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns
 				}
 			};
 		}
-
-
-		// ========================
-
-		protected virtual IDriver AddComponent(IDrivingCycle prev, IDriver next)
-		{
-			prev.InPort().Connect(next.OutPort());
-			return next;
-		}
-
-		protected virtual IVehicle AddComponent(IDriver prev, IVehicle next)
-		{
-			prev.InPort().Connect(next.OutPort());
-			return next;
-		}
-
-		protected virtual IWheels AddComponent(IFvInProvider prev, IWheels next)
-		{
-			prev.InPort().Connect(next.OutPort());
-			return next;
-		}
-
-
-		protected virtual ITnOutProvider AddComponent(IWheels prev, ITnOutProvider next)
-		{
-			prev.InPort().Connect(next.OutPort());
-			return next;
-		}
-
-		protected virtual IPowerTrainComponent AddComponent(IPowerTrainComponent prev, IPowerTrainComponent next)
-		{
-			prev.InPort().Connect(next.OutPort());
-			return next;
-		}
-
-		protected virtual void AddComponent(IPowerTrainComponent prev, ITnOutProvider next)
-		{
-			prev.InPort().Connect(next.OutPort());
-		}
 	}
 }
\ No newline at end of file
diff --git a/VectoCoreTest/Utils/Port.cs b/VectoCoreTest/Utils/Port.cs
new file mode 100644
index 0000000000000000000000000000000000000000..1c1b77e620185f9c13f21a4238735ad9f4ce59b2
--- /dev/null
+++ b/VectoCoreTest/Utils/Port.cs
@@ -0,0 +1,44 @@
+using TUGraz.VectoCore.Models.Connector.Ports;
+using TUGraz.VectoCore.Models.SimulationComponent;
+
+namespace TUGraz.VectoCore.Tests.Utils
+{
+	public static class Port
+	{
+		public static IDriver AddComponent(IDrivingCycle prev, IDriver next)
+		{
+			prev.InPort().Connect(next.OutPort());
+			return next;
+		}
+
+		public static IVehicle AddComponent(IDriver prev, IVehicle next)
+		{
+			prev.InPort().Connect(next.OutPort());
+			return next;
+		}
+
+		public static IWheels AddComponent(IFvInProvider prev, IWheels next)
+		{
+			prev.InPort().Connect(next.OutPort());
+			return next;
+		}
+
+
+		public static ITnOutProvider AddComponent(IWheels prev, ITnOutProvider next)
+		{
+			prev.InPort().Connect(next.OutPort());
+			return next;
+		}
+
+		public static IPowerTrainComponent AddComponent(IPowerTrainComponent prev, IPowerTrainComponent next)
+		{
+			prev.InPort().Connect(next.OutPort());
+			return next;
+		}
+
+		public static void AddComponent(IPowerTrainComponent prev, ITnOutProvider next)
+		{
+			prev.InPort().Connect(next.OutPort());
+		}
+	}
+}
\ No newline at end of file