diff --git a/VectoCore/VectoCoreTest/Algorithms/CSVDigestValueTest.cs b/VectoCore/VectoCoreTest/Algorithms/CSVDigestValueTest.cs
index 55c749db2edd3819957059f3f0a28ae650a1cf54..e9e38942fe7cb721ed8b76f7815cf5333668b559 100644
--- a/VectoCore/VectoCoreTest/Algorithms/CSVDigestValueTest.cs
+++ b/VectoCore/VectoCoreTest/Algorithms/CSVDigestValueTest.cs
@@ -44,7 +44,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 	public class CSVDigestValueTest
 	{
 
-		[Test]
+		[TestCase]
 		public void TestDigestValueCreation()
 		{
 			var tbl = CreateDataTable(new[] { "t", "dt", "v" }, 5);
@@ -68,7 +68,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 			Assert.IsTrue(last.Contains("SHA256"), "Digest descriptor SHA256 not found");
 		}
 
-		[Test]
+		[TestCase]
 		public void TestDigestValueValidation()
 		{
 			var tbl = CreateDataTable(new[] { "t", "dt", "v" }, 5);
diff --git a/VectoCore/VectoCoreTest/Algorithms/DelaunayMapTest.cs b/VectoCore/VectoCoreTest/Algorithms/DelaunayMapTest.cs
index 7a056940a23048a63937c0550fbc3cf6d3baf20c..baae14e9217eca3e6a489ea70b347eb47a03afbd 100644
--- a/VectoCore/VectoCoreTest/Algorithms/DelaunayMapTest.cs
+++ b/VectoCore/VectoCoreTest/Algorithms/DelaunayMapTest.cs
@@ -51,7 +51,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 		}
 
 
-		[Test]
+		[TestCase]
 		public void Test_Simple_DelaunayMap()
 		{
 			var map = new DelaunayMap("TEST");
@@ -66,7 +66,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 			AssertHelper.AreRelativeEqual(0, result);
 		}
 
-		[Test]
+		[TestCase]
 		public void Test_DelaunayMapTriangle()
 		{
 			var map = new DelaunayMap("TEST");
@@ -141,7 +141,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 			AssertHelper.Exception<VectoException>(() => map.Interpolate(-1.5, -0.5), "Interpolation failed.");
 		}
 
-		[Test]
+		[TestCase]
 		public void Test_Delaunay_LessThan3Points()
 		{
 			AssertHelper.Exception<ArgumentException>(() => new DelaunayMap("TEST").Triangulate(),
@@ -167,7 +167,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 			map.Triangulate();
 		}
 
-		[Test]
+		[TestCase]
 		public void Test_Delaunay_DuplicatePoints()
 		{
 			var map = new DelaunayMap("TEST");
@@ -181,7 +181,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 				"TEST: Input Data for Delaunay map contains duplicates! \n1 / 1");
 		}
 
-		[Test]
+		[TestCase]
 		public void Test_Delaunay_NormalOperation()
 		{
 			foreach (var factors in	new[] {
diff --git a/VectoCore/VectoCoreTest/Algorithms/MeanShiftClusteringTest.cs b/VectoCore/VectoCoreTest/Algorithms/MeanShiftClusteringTest.cs
index 5e23fc1b67e9ade85fd6988d2264aa5e99a6040f..8bc4baba600bf587ab0e380aa6cc29510c04cbca 100644
--- a/VectoCore/VectoCoreTest/Algorithms/MeanShiftClusteringTest.cs
+++ b/VectoCore/VectoCoreTest/Algorithms/MeanShiftClusteringTest.cs
@@ -42,7 +42,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 	public class MeanShiftClusteringTest
 	{
 		
-		[Test]
+		[TestCase]
 		public void TestClusteringClusters()
 		{
 			var centers = new[] { 100.0, 200, 300, 400 };
@@ -75,7 +75,7 @@ namespace TUGraz.VectoCore.Tests.Algorithms
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void TestClusteringRandom()
 		{
 			var entries = new double[100];
diff --git a/VectoCore/VectoCoreTest/Dummy/EngineFLDTest.cs b/VectoCore/VectoCoreTest/Dummy/EngineFLDTest.cs
index 0db9d4ccd9ddf6a1c26a246a15c04ecf2b747787..1e949d1c83384c73d120e3d34e98fb5113a1516d 100644
--- a/VectoCore/VectoCoreTest/Dummy/EngineFLDTest.cs
+++ b/VectoCore/VectoCoreTest/Dummy/EngineFLDTest.cs
@@ -48,7 +48,7 @@ namespace TUGraz.VectoCore.Tests.Dummy
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void CompareFLDLookupPerformance()
 		{
 			var engineFile1 = @"TestData\Components\40t_Long_Haul_Truck.vfld";
@@ -80,7 +80,7 @@ namespace TUGraz.VectoCore.Tests.Dummy
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void LookupTest()
 		{
 			var engineFile2 = @"E:\QUAM\Downloads\EngineFLD\Map_375c_BB1390_modTUG_R49_375c_BB1386.vfld";
diff --git a/VectoCore/VectoCoreTest/Exceptions/ExceptionTests.cs b/VectoCore/VectoCoreTest/Exceptions/ExceptionTests.cs
index 907f09f02a4a143ae35775a9b1de9d17332617af..9f456deafba7a18c98d48ac56e87a3b12a0d13c4 100644
--- a/VectoCore/VectoCoreTest/Exceptions/ExceptionTests.cs
+++ b/VectoCore/VectoCoreTest/Exceptions/ExceptionTests.cs
@@ -41,7 +41,7 @@ namespace TUGraz.VectoCore.Tests.Exceptions
 	[Parallelizable(ParallelScope.All)]
 	public class ExceptionTests
 	{
-		[Test]
+		[TestCase]
 		public void Test_VectoExceptions()
 		{
 			new CSVReadException("Test");
diff --git a/VectoCore/VectoCoreTest/FileIO/JsonReadTest.cs b/VectoCore/VectoCoreTest/FileIO/JsonReadTest.cs
index 92db04f43f4e71161c31c4a29a514557f33eaa15..491b793f18dc085d52c41d078260429eb7b5d70c 100644
--- a/VectoCore/VectoCoreTest/FileIO/JsonReadTest.cs
+++ b/VectoCore/VectoCoreTest/FileIO/JsonReadTest.cs
@@ -63,7 +63,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void ReadJobTest()
 		{
 			var job = JSONInputDataFactory.ReadJsonJob(TestJobFile);
@@ -72,7 +72,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			//			AssertHelper.Exception<InvalidFileFormatException>(() => );
 		}
 
-		[Test]
+		[TestCase]
 		public void NoEngineFileTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -82,7 +82,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 				"JobFile: Failed to read Engine file '': Key EngineFile not found");
 		}
 
-		[Test]
+		[TestCase]
 		public void NoGearboxFileTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -92,7 +92,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 				"JobFile: Failed to read Gearbox file '': Key GearboxFile not found");
 		}
 
-		[Test]
+		[TestCase]
 		public void NoVehicleFileTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -102,7 +102,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 				"JobFile: Failed to read Vehicle file '': Key VehicleFile not found");
 		}
 
-		[Test]
+		[TestCase]
 		public void NoCyclesTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -112,7 +112,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(0, tmp.Count);
 		}
 
-		[Test]
+		[TestCase]
 		public void NoAuxTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -126,7 +126,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(0, tmp.PowerDemandICEOffStandstill.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void NoDriverAccCurveTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -137,7 +137,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.IsNull(tmp);
 		}
 
-		[Test]
+		[TestCase]
 		public void UseDeclarationDriverAccCurveTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -148,7 +148,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.IsNotNull(tmp);
 		}
 
-		[Test]
+		[TestCase]
 		public void NoLookaheadCoastingTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -159,7 +159,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.IsNull(tmp);
 		}
 
-		[Test]
+		[TestCase]
 		public void NoOverspeedEcoRollTest()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -172,7 +172,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 				"Key OverSpeedEcoRoll not found");
 		}
 
-		[Test]
+		[TestCase]
 		public void ReadGearboxV5()
 		{
 			var inputProvider = JSONInputDataFactory.ReadGearbox(@"TestData\Components\AT_GBX\Gearbox_v5.vgbx");
@@ -213,7 +213,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.IsFalse(gbxData.Gears[3].HasTorqueConverter);
 		}
 
-		[Test]
+		[TestCase]
 		public void ReadGearboxSerialTC()
 		{
 			var inputProvider = JSONInputDataFactory.ReadGearbox(@"TestData\Components\AT_GBX\GearboxSerial.vgbx");
@@ -261,7 +261,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(gear.Ratio, gear.TorqueConverterRatio);
 		}
 
-		[Test]
+		[TestCase]
 		public void ReadGearboxPowersplitTC()
 		{
 			var inputProvider = JSONInputDataFactory.ReadGearbox(@"TestData\Components\AT_GBX\GearboxPowerSplit.vgbx");
@@ -308,7 +308,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(1, gbxData.Gears[1].TorqueConverterRatio);
 		}
 
-		[Test]
+		[TestCase]
 		public void ReadGearboxDualTCTruck()
 		{
 			var inputProvider = JSONInputDataFactory.ReadGearbox(@"TestData\Components\AT_GBX\GearboxSerialDualTC.vgbx");
@@ -356,7 +356,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(gear.Ratio, gear.TorqueConverterRatio);
 		}
 
-		[Test]
+		[TestCase]
 		public void ReadGearboxSingleTCBus()
 		{
 			var inputProvider = JSONInputDataFactory.ReadGearbox(@"TestData\Components\AT_GBX\GearboxSerialDualTC.vgbx");
@@ -404,7 +404,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(gear.Ratio, gear.TorqueConverterRatio);
 		}
 
-		[Test]
+		[TestCase]
 		public void ReadGearboxDualTCBus()
 		{
 			var inputProvider = JSONInputDataFactory.ReadGearbox(@"TestData\Components\AT_GBX\GearboxSerialDualTCBus.vgbx");
@@ -453,7 +453,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(gear.Ratio, gear.TorqueConverterRatio);
 		}
 
-		//[Test]
+		//[TestCase]
 		//public void TestReadingElectricTechlist()
 		//{
 		//	var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestJobFile)));
@@ -468,7 +468,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 		//	}
 		//}
 
-		[Test]
+		[TestCase]
 		public void JSON_Read_AngleGear()
 		{
 			var json = (JObject)JToken.ReadFrom(new JsonTextReader(File.OpenText(TestVehicleFile)));
@@ -481,7 +481,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 		}
 
 
-		[Test]
+		[TestCase]
 		public void JSON_Read_HeavyBus()
 		{
 			var inputProvider = (IDeclarationInputDataProvider)JSONInputDataFactory.ReadJsonJob(@"TestData\Generic Vehicles\Engineering Mode\HeavyBusPrimary\HeavyBusPrimary_DECL.vecto");
@@ -578,7 +578,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 	//  ""FileVersion"": 7
 	//}";
 
-	//		[Test]
+	//		[TestCase]
 	//		public void TestJsonHeaderEquality()
 	//		{
 	//			var h1 = new JsonDataHeader {
@@ -599,7 +599,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 	//			Assert.AreNotEqual(h1, "hello world");
 	//		}
 
-	//		[Test]
+	//		[TestCase]
 	//		public void Test_Json_DateFormat_German()
 	//		{
 	//			var json = @"{
@@ -619,7 +619,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 	//			Assert.AreEqual(jsonExpected, jsonCompare);
 	//		}
 
-	//		[Test]
+	//		[TestCase]
 	//		public void Test_Json_DateFormat_German2()
 	//		{
 	//			var json = @"{
@@ -639,7 +639,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 	//			Assert.AreEqual(jsonExpected2, jsonCompare);
 	//		}
 
-	//		[Test]
+	//		[TestCase]
 	//		public void Test_Json_DateFormat_English()
 	//		{
 	//			var json = @"{
@@ -659,7 +659,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 	//			Assert.AreEqual(jsonExpected, jsonCompare);
 	//		}
 
-	//		[Test]
+	//		[TestCase]
 	//		public void Test_Json_DateFormat_English2()
 	//		{
 	//			var json = @"{
@@ -679,7 +679,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 	//			Assert.AreEqual(jsonExpected2, jsonCompare);
 	//		}
 
-	//		[Test]
+	//		[TestCase]
 	//		public void Test_Json_DateFormat_ISO8601()
 	//		{
 	//			var json = @"{
@@ -699,7 +699,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 	//			Assert.AreEqual(json, jsonCompare);
 	//		}
 
-	//		[Test]
+	//		[TestCase]
 	//		public void Test_Json_DateFormat_ISO8601_CET()
 	//		{
 	//			var json = @"{
diff --git a/VectoCore/VectoCoreTest/FileIO/SimulationDataReaderTest.cs b/VectoCore/VectoCoreTest/FileIO/SimulationDataReaderTest.cs
index ce1d8460a7fc4c139c57e218947ba58af4075fca..034dc9a440a9871e7bd9e3f6b556b1f820a66133 100644
--- a/VectoCore/VectoCoreTest/FileIO/SimulationDataReaderTest.cs
+++ b/VectoCore/VectoCoreTest/FileIO/SimulationDataReaderTest.cs
@@ -58,7 +58,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void ReadDeclarationJobFile()
 		{
 			var dataProvider = JSONInputDataFactory.ReadJsonJob(DeclarationJob);
diff --git a/VectoCore/VectoCoreTest/FileIO/VectoCSVFileTest.cs b/VectoCore/VectoCoreTest/FileIO/VectoCSVFileTest.cs
index 2adb85d5075414dc04384bdcab81e5b1d94e4c25..d3beaaec56957d0b37bec9e51c8e5d83ce35d4c5 100644
--- a/VectoCore/VectoCoreTest/FileIO/VectoCSVFileTest.cs
+++ b/VectoCore/VectoCoreTest/FileIO/VectoCSVFileTest.cs
@@ -50,7 +50,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_Read()
 		{
 			var table = VectoCSVFile.Read(@"TestData\test.csv");
@@ -62,7 +62,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			CollectionAssert.AreEqual(new[] { "4", "5", "6" }, table.Rows[1].ItemArray);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_Read_RealLossMap()
 		{
 			var table = VectoCSVFile.Read(@"TestData\Components\Axle.vtlm");
@@ -72,7 +72,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(285, table.Rows.Count);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_ReadStream_Normal()
 		{
 			var stream = "a,b,c\n1,2,3\n4,5,6".ToStream();
@@ -85,7 +85,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			CollectionAssert.AreEqual(new[] { "4", "5", "6" }, table.Rows[1].ItemArray);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_ReadStream_Escaped()
 		{
 			var stream = "a,b,c\n\"1,1\",2,3\n4,5,6".ToStream();
@@ -98,7 +98,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			CollectionAssert.AreEqual(new[] { "4", "5", "6" }, table.Rows[1].ItemArray);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_ReadStream_Comment()
 		{
 			var stream = "a,b,c\n\"1,1\",2,3#asdf\n4,5,6".ToStream();
@@ -111,7 +111,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			CollectionAssert.AreEqual(new[] { "4", "5", "6" }, table.Rows[1].ItemArray);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_ReadStream_EscapedComment()
 		{
 			var stream = "a,b,c\n\"1,1\",2,\"3#asdf\"\n4,5,6".ToStream();
@@ -124,7 +124,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			CollectionAssert.AreEqual(new[] { "4", "5", "6" }, table.Rows[1].ItemArray);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_ReadStream_No_Header()
 		{
 			var stream = "1,2,3\n4,5,6".ToStream();
@@ -137,7 +137,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			CollectionAssert.AreEqual(new[] { "4", "5", "6" }, table.Rows[1].ItemArray);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_ReadStream_No_Content()
 		{
 			var stream = "a,b,c".ToStream();
@@ -148,13 +148,13 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual(0, table.Rows.Count);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_ReadStream_Empty()
 		{
 			AssertHelper.Exception<VectoException>(() => VectoCSVFile.ReadStream("".ToStream()));
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_ReadStream_Comments()
 		{
 			var stream = @"#a,b,c
@@ -173,7 +173,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			CollectionAssert.AreEqual(new[] { "4", "5", "6" }, table.Rows[1].ItemArray);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_Write_Filename()
 		{
 			const string fileName = "out_test.csv";
@@ -193,7 +193,7 @@ namespace TUGraz.VectoCore.Tests.FileIO
 			Assert.AreEqual("a,b\r\n1,2\r\n", text);
 		}
 
-		[Test]
+		[TestCase]
 		public void VectoCSVFile_Write_StreamWriter()
 		{
 			var table = new DataTable();
diff --git a/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsConventional.cs b/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsConventional.cs
index 7d142897a30140a417afa2ad3cee3ec9f3bce31c..620272e80fbbf3e213d2fe3064c944d0df96f9a1 100644
--- a/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsConventional.cs
+++ b/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsConventional.cs
@@ -277,14 +277,14 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			return jobContainer;
 		}
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4119, OutsideSegment, Accelerate),        // len: 4119m
 			(4119, 5426, WithinSegment, Accelerate),      // len: 1307m
 			(5426, 5830, UseCase1, Coast),                // len: 404m
 			(5830, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4609, OutsideSegment, Accelerate),        // len: 4609m
 			(4609, 5414, WithinSegment, Accelerate),      // len: 805m
@@ -292,7 +292,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7291, 7490, OutsideSegment, Coast),          // len: 199m
 			(7490, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3967, OutsideSegment, Accelerate),        // len: 3967m
 			(3967, 4912, WithinSegment, Accelerate),      // len: 945m
@@ -303,7 +303,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7173, 7573, OutsideSegment, Coast),          // len: 400m
 			(7573, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 1867, WithinSegment, Accelerate),       // len: 1213m
@@ -318,7 +318,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7092, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 689, OutsideSegment, Accelerate),         // len: 689m
 			(689, 2066, WithinSegment, Accelerate),       // len: 1377m
@@ -330,7 +330,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4179, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 700, OutsideSegment, Accelerate),         // len: 700m
 			(700, 2066, WithinSegment, Accelerate),       // len: 1366m
@@ -339,7 +339,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2587, 3283, UseCase1, Coast),                // len: 696m
 			(3283, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3944, OutsideSegment, Accelerate),        // len: 3944m
 			(3944, 5076, WithinSegment, Accelerate),      // len: 1132m
@@ -351,7 +351,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7323, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3804, OutsideSegment, Accelerate),        // len: 3804m
 			(3804, 4772, WithinSegment, Accelerate),      // len: 968m
@@ -359,11 +359,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6003, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3559, OutsideSegment, Accelerate),        // len: 3559m
 			(3559, 4470, WithinSegment, Accelerate),      // len: 911m
@@ -394,7 +394,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6132, 6520, OutsideSegment, Coast),          // len: 388m
 			(6520, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -414,7 +414,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5422, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -434,7 +434,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4718, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4119, OutsideSegment, Accelerate),        // len: 4119m
 			(4119, 5426, WithinSegment, Accelerate),      // len: 1307m
@@ -442,7 +442,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5830, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4609, OutsideSegment, Accelerate),        // len: 4609m
 			(4609, 5414, WithinSegment, Accelerate),      // len: 805m
@@ -450,7 +450,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7291, 7490, OutsideSegment, Coast),          // len: 199m
 			(7490, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3967, OutsideSegment, Accelerate),        // len: 3967m
 			(3967, 4912, WithinSegment, Accelerate),      // len: 945m
@@ -460,7 +460,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7170, 7467, OutsideSegment, Coast),          // len: 297m
 			(7467, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 1867, WithinSegment, Accelerate),       // len: 1213m
@@ -474,7 +474,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6708, 6982, OutsideSegment, Coast),          // len: 274m
 			(6982, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 689, OutsideSegment, Accelerate),         // len: 689m
 			(689, 2066, WithinSegment, Accelerate),       // len: 1377m
@@ -485,7 +485,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3978, 4179, OutsideSegment, Coast),          // len: 201m
 			(4179, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 700, OutsideSegment, Accelerate),         // len: 700m
 			(700, 2066, WithinSegment, Accelerate),       // len: 1366m
@@ -495,7 +495,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3283, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3944, OutsideSegment, Accelerate),        // len: 3944m
 			(3944, 5076, WithinSegment, Accelerate),      // len: 1132m
@@ -506,7 +506,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7118, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3804, OutsideSegment, Accelerate),        // len: 3804m
 			(3804, 4772, WithinSegment, Accelerate),      // len: 968m
@@ -514,11 +514,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6003, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3559, OutsideSegment, Accelerate),        // len: 3559m
 			(3559, 4470, WithinSegment, Accelerate),      // len: 911m
@@ -549,7 +549,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6136, 6409, OutsideSegment, Coast),          // len: 273m
 			(6409, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -570,7 +570,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -589,13 +589,13 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4510, 4718, OutsideSegment, Coast),          // len: 208m
 			(4718, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5601, OutsideSegment, Accelerate),        // len: 5601m
 			(5601, 5940, OutsideSegment, Coast),          // len: 339m
 			(5940, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 6079, OutsideSegment, Accelerate),        // len: 6079m
 			(6079, 6704, OutsideSegment, Coast),          // len: 625m
@@ -603,7 +603,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7293, 7757, OutsideSegment, Coast),          // len: 464m
 			(7757, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5449, OutsideSegment, Accelerate),        // len: 5449m
 			(5449, 5779, OutsideSegment, Coast),          // len: 330m
@@ -611,7 +611,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7160, 7458, OutsideSegment, Coast),          // len: 298m
 			(7458, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2147, OutsideSegment, Accelerate),        // len: 2147m
 			(2147, 2289, OutsideSegment, Coast),          // len: 142m
@@ -624,7 +624,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6985, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2182, OutsideSegment, Accelerate),        // len: 2182m
 			(2182, 2476, OutsideSegment, Coast),          // len: 294m
@@ -635,7 +635,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4234, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2182, OutsideSegment, Accelerate),        // len: 2182m
 			(2182, 2511, OutsideSegment, Coast),          // len: 329m
@@ -643,7 +643,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2873, 3475, OutsideSegment, Coast),          // len: 602m
 			(3475, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5426, OutsideSegment, Accelerate),        // len: 5426m
 			(5426, 5591, OutsideSegment, Coast),          // len: 165m
@@ -651,7 +651,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6600, 7111, OutsideSegment, Coast),          // len: 511m
 			(7111, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5286, OutsideSegment, Accelerate),        // len: 5286m
 			(5286, 5640, OutsideSegment, Coast),          // len: 354m
@@ -659,11 +659,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6000, 6250, OutsideSegment, Coast),          // len: 250m
 			(6250, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4400, OutsideSegment, Accelerate),
 			(5300, 5430, OutsideSegment, Accelerate),
@@ -671,7 +671,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6150, 6375, OutsideSegment, Coast),
 			(6450, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -692,7 +692,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -711,14 +711,14 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4510, 4718, OutsideSegment, Coast),          // len: 208m
 			(4718, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5601, OutsideSegment, Accelerate),        // len: 5601m
 			(5601, 5671, OutsideSegment, Coast),          // len: 70m
 			(5671, 6072, OutsideSegment, Roll),           // len: 401m
 			(6072, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 6079, OutsideSegment, Accelerate),        // len: 6079m
 			(6079, 6149, OutsideSegment, Coast),          // len: 70m
@@ -729,7 +729,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7286, 7750, OutsideSegment, Coast),          // len: 464m
 			(7750, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5449, OutsideSegment, Accelerate),        // len: 5449m
 			(5449, 5519, OutsideSegment, Coast),          // len: 70m
@@ -739,7 +739,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7460, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2147, OutsideSegment, Accelerate),        // len: 2147m
 			(2147, 2289, OutsideSegment, Coast),          // len: 142m
@@ -752,7 +752,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6701, 6987, OutsideSegment, Coast),          // len: 286m
 			(6987, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2182, OutsideSegment, Accelerate),        // len: 2182m
 			(2182, 2252, OutsideSegment, Coast),          // len: 70m
@@ -764,7 +764,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3975, 4236, OutsideSegment, Coast),          // len: 261m
 			(4236, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2182, OutsideSegment, Accelerate),        // len: 2182m
 			(2182, 2252, OutsideSegment, Coast),          // len: 70m
@@ -778,7 +778,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3280, 3517, OutsideSegment, Coast),          // len: 237m
 			(3517, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5426, OutsideSegment, Accelerate),        // len: 5426m
 			(5426, 5591, OutsideSegment, Coast),          // len: 165m
@@ -787,7 +787,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7111, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5286, OutsideSegment, Accelerate),        // len: 5286m
 			(5286, 5356, OutsideSegment, Coast),          // len: 70m
@@ -799,12 +799,12 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6252, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4470, OutsideSegment, Accelerate),        // len: 4470m
 			//(4470, 4488, OutsideSegment, Roll),           // len: 18m
@@ -832,7 +832,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6125, 6410, OutsideSegment, Coast),          // len: 285m
 			(6410, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -855,7 +855,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5420, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -878,14 +878,14 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4723, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5601, OutsideSegment, Accelerate),        // len: 5601m
 			(5601, 5671, OutsideSegment, Coast),          // len: 70m
 			(5671, 6072, OutsideSegment, Roll),           // len: 401m
 			(6072, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 6079, OutsideSegment, Accelerate),        // len: 6079m
 			(6079, 6149, OutsideSegment, Coast),          // len: 70m
@@ -896,7 +896,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7286, 7750, OutsideSegment, Coast),          // len: 464m
 			(7750, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5449, OutsideSegment, Accelerate),        // len: 5449m
 			(5449, 5519, OutsideSegment, Coast),          // len: 70m
@@ -906,7 +906,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7460, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2147, OutsideSegment, Accelerate),        // len: 2147m
 			(2147, 2289, OutsideSegment, Coast),          // len: 142m
@@ -919,7 +919,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6701, 6987, OutsideSegment, Coast),          // len: 286m
 			(6987, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2182, OutsideSegment, Accelerate),        // len: 2182m
 			(2182, 2252, OutsideSegment, Coast),          // len: 70m
@@ -931,7 +931,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3975, 4236, OutsideSegment, Coast),          // len: 261m
 			(4236, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2182, OutsideSegment, Accelerate),        // len: 2182m
 			(2182, 2252, OutsideSegment, Coast),          // len: 70m
@@ -945,7 +945,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3280, 3517, OutsideSegment, Coast),          // len: 237m
 			(3517, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5426, OutsideSegment, Accelerate),        // len: 5426m
 			(5426, 5591, OutsideSegment, Coast),          // len: 165m
@@ -953,7 +953,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6600, 7111, OutsideSegment, Coast),          // len: 511m
 			(7111, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5286, OutsideSegment, Accelerate),        // len: 5286m
 			(5286, 5356, OutsideSegment, Coast),          // len: 70m
@@ -962,11 +962,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6002, 6252, OutsideSegment, Coast),          // len: 250m
 			(6252, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4470, OutsideSegment, Accelerate),        // len: 4470m
 			(4470, 4488, OutsideSegment, Roll),           // len: 18m
@@ -994,7 +994,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6125, 6410, OutsideSegment, Coast),          // len: 285m
 			(6410, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -1017,7 +1017,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5420, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -1037,7 +1037,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4505, 4723, OutsideSegment, Coast),          // len: 218m
 			(4723, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4025, OutsideSegment, Accelerate),        // len: 4025m
 			(4025, 5309, WithinSegment, Accelerate),      // len: 1284m
@@ -1045,7 +1045,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5908, 5920, OutsideSegment, Coast),          // len: 12m
 			(5920, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4352, OutsideSegment, Accelerate),        // len: 4352m
 			(4352, 5216, WithinSegment, Accelerate),      // len: 864m
@@ -1057,7 +1057,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7551, 7911, OutsideSegment, Coast),          // len: 360m
 			(7911, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3850, OutsideSegment, Accelerate),        // len: 3850m
 			(3850, 4807, WithinSegment, Accelerate),      // len: 957m
@@ -1068,7 +1068,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7278, 7579, OutsideSegment, Coast),          // len: 301m
 			(7579, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 630, OutsideSegment, Accelerate),         // len: 630m
 			(630, 1786, WithinSegment, Accelerate),       // len: 1156m
@@ -1083,7 +1083,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6804, 7093, OutsideSegment, Coast),          // len: 289m
 			(7093, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 2007, WithinSegment, Accelerate),       // len: 1353m
@@ -1095,7 +1095,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4060, 4299, OutsideSegment, Coast),          // len: 239m
 			(4299, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 665, OutsideSegment, Accelerate),         // len: 665m
 			(665, 2007, WithinSegment, Accelerate),       // len: 1342m
@@ -1105,7 +1105,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3350, 3539, OutsideSegment, Roll),           // len: 189m
 			(3539, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3920, OutsideSegment, Accelerate),        // len: 3920m
 			(3920, 4994, WithinSegment, Accelerate),      // len: 1074m
@@ -1117,7 +1117,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7323, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3722, OutsideSegment, Accelerate),        // len: 3722m
 			(3722, 4609, WithinSegment, Accelerate),      // len: 887m
@@ -1127,11 +1127,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6094, 6331, OutsideSegment, Roll),           // len: 237m
 			(6331, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4470, WithinSegment, Accelerate),      // len: 923m
@@ -1162,7 +1162,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6224, 6514, OutsideSegment, Coast),          // len: 290m
 			(6514, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -1185,7 +1185,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5420, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -1208,7 +1208,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4723, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4025, OutsideSegment, Accelerate),        // len: 4025m
 			(4025, 5309, WithinSegment, Accelerate),      // len: 1284m
@@ -1216,7 +1216,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5908, 5932, OutsideSegment, Coast),          // len: 24m
 			(5932, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4352, OutsideSegment, Accelerate),        // len: 4352m
 			(4352, 5216, WithinSegment, Accelerate),      // len: 864m
@@ -1228,7 +1228,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7552, 7912, OutsideSegment, Coast),          // len: 360m
 			(7912, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3850, OutsideSegment, Accelerate),        // len: 3850m
 			(3850, 4807, WithinSegment, Accelerate),      // len: 957m
@@ -1239,7 +1239,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7278, 7579, OutsideSegment, Coast),          // len: 301m
 			(7579, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 630, OutsideSegment, Accelerate),         // len: 630m
 			(630, 1786, WithinSegment, Accelerate),       // len: 1156m
@@ -1255,7 +1255,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7093, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 2007, WithinSegment, Accelerate),       // len: 1353m
@@ -1267,7 +1267,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4061, 4299, OutsideSegment, Coast),          // len: 238m
 			(4299, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 665, OutsideSegment, Accelerate),         // len: 665m
 			(665, 2007, WithinSegment, Accelerate),       // len: 1342m
@@ -1277,7 +1277,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3350, 3539, OutsideSegment, Roll),           // len: 189m
 			(3539, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3920, OutsideSegment, Accelerate),        // len: 3920m
 			(3920, 4994, WithinSegment, Accelerate),      // len: 1074m
@@ -1288,7 +1288,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6904, 7323, OutsideSegment, Coast),          // len: 419m
 			(7323, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3722, OutsideSegment, Accelerate),        // len: 3722m
 			(3722, 4609, WithinSegment, Accelerate),      // len: 887m
@@ -1298,11 +1298,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6094, 6332, OutsideSegment, Roll),           // len: 238m
 			(6332, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4470, WithinSegment, Accelerate),      // len: 923m
@@ -1333,7 +1333,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6225, 6514, OutsideSegment, Coast),          // len: 289m
 			(6514, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
@@ -1356,7 +1356,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5420, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 7, OutsideSegment, Accelerate),           // len: 7m
diff --git a/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsHEV.cs b/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsHEV.cs
index 5d670c361ca5f58603c7559483d1807caae408f4..ff3be4dd5fa86c09909c37db3963c05e1214379c 100644
--- a/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsHEV.cs
+++ b/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsHEV.cs
@@ -173,7 +173,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 		}
 
 		#region PCC Engineering Testcases
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4130, OutsideSegment, Accelerate),        // len: 4130m
 			(4130, 5461, WithinSegment, Accelerate),      // len: 1331m
@@ -189,7 +189,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6083, 6106, OutsideSegment, Roll),           // len: 23m
 			(6106, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4655, OutsideSegment, Accelerate),        // len: 4655m
 			(4655, 5472, WithinSegment, Accelerate),      // len: 817m
@@ -201,7 +201,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7431, 7478, OutsideSegment, Coast),          // len: 47m
 			(7478, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3955, OutsideSegment, Accelerate),        // len: 3955m
 			(3955, 4936, WithinSegment, Accelerate),      // len: 981m
@@ -215,7 +215,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7190, 7554, OutsideSegment, Coast),          // len: 364m
 			(7554, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 1891, WithinSegment, Accelerate),       // len: 1237m
@@ -232,7 +232,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6692, 7069, OutsideSegment, Coast),          // len: 377m
 			(7069, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 689, OutsideSegment, Accelerate),         // len: 689m
 			(689, 2077, WithinSegment, Accelerate),       // len: 1388m
@@ -251,7 +251,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3995, 4197, OutsideSegment, Coast),          // len: 202m
 			(4197, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 700, OutsideSegment, Accelerate),         // len: 700m
 			(700, 2077, WithinSegment, Accelerate),       // len: 1377m
@@ -267,7 +267,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3294, 3340, OutsideSegment, Coast),          // len: 46m
 			(3340, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3944, OutsideSegment, Accelerate),        // len: 3944m
 			(3944, 5087, WithinSegment, Accelerate),      // len: 1143m
@@ -281,7 +281,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6562, 7265, OutsideSegment, Coast),          // len: 703m
 			(7265, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3815, OutsideSegment, Accelerate),        // len: 3815m
 			(3815, 4842, WithinSegment, Accelerate),      // len: 1027m
@@ -290,11 +290,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6019, 6066, OutsideSegment, Coast),          // len: 47m
 			(6066, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3559, OutsideSegment, Accelerate),        // len: 3559m
 			(3559, 4472, WithinSegment, Accelerate),      // len: 913m
@@ -324,7 +324,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6118, 6494, OutsideSegment, Coast),          // len: 376m
 			(6494, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -339,7 +339,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -351,7 +351,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4752, 4771, OutsideSegment, Roll),           // len: 19m
 			(4771, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4130, OutsideSegment, Accelerate),        // len: 4130m
 			(4130, 5461, WithinSegment, Accelerate),      // len: 1331m
@@ -367,7 +367,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6083, 6106, OutsideSegment, Roll),           // len: 23m
 			(6106, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4655, OutsideSegment, Accelerate),        // len: 4655m
 			(4655, 5472, WithinSegment, Accelerate),      // len: 817m
@@ -380,7 +380,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7478, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3979, OutsideSegment, Accelerate),        // len: 3979m
 			(3979, 4936, WithinSegment, Accelerate),      // len: 957m
@@ -393,7 +393,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7150, 7436, OutsideSegment, Coast),          // len: 286m
 			(7436, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 1891, WithinSegment, Accelerate),       // len: 1237m
@@ -412,7 +412,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 689, OutsideSegment, Accelerate),         // len: 689m
 			(689, 2077, WithinSegment, Accelerate),       // len: 1388m
@@ -431,7 +431,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3995, 4197, OutsideSegment, Coast),          // len: 202m
 			(4197, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 700, OutsideSegment, Accelerate),         // len: 700m
 			(700, 2077, WithinSegment, Accelerate),       // len: 1377m
@@ -447,7 +447,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3294, 3340, OutsideSegment, Coast),          // len: 46m
 			(3340, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3944, OutsideSegment, Accelerate),        // len: 3944m
 			(3944, 5087, WithinSegment, Accelerate),      // len: 1143m
@@ -460,7 +460,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6560, 7048, OutsideSegment, Coast),          // len: 488m
 			(7048, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3815, OutsideSegment, Accelerate),        // len: 3815m
 			(3815, 4842, WithinSegment, Accelerate),      // len: 1027m
@@ -470,11 +470,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6066, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4472, WithinSegment, Accelerate),      // len: 925m
@@ -489,7 +489,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6143, 6381, OutsideSegment, Coast),          // len: 238m
 			(6381, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -516,7 +516,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5509, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC12_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -541,7 +541,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4752, 4771, OutsideSegment, Roll),           // len: 19m
 			(4771, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5531, OutsideSegment, Accelerate),        // len: 5531m
 			(5531, 6038, OutsideSegment, Coast),          // len: 507m
@@ -550,7 +550,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6096, 6120, OutsideSegment, Roll),           // len: 24m
 			(6120, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5892, OutsideSegment, Accelerate),        // len: 5892m
 			(5892, 6387, OutsideSegment, Coast),          // len: 495m
@@ -558,7 +558,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7481, 7874, OutsideSegment, Coast),          // len: 393m
 			(7874, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5367, OutsideSegment, Accelerate),        // len: 5367m
 			(5367, 5685, OutsideSegment, Coast),          // len: 318m
@@ -566,7 +566,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7247, 7509, OutsideSegment, Coast),          // len: 262m
 			(7509, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2124, OutsideSegment, Accelerate),        // len: 2124m
 			(2124, 2265, OutsideSegment, Coast),          // len: 141m
@@ -578,7 +578,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6776, 7026, OutsideSegment, Coast),          // len: 250m
 			(7026, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2159, OutsideSegment, Accelerate),        // len: 2159m
 			(2159, 2525, OutsideSegment, Coast),          // len: 366m
@@ -588,7 +588,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4024, 4286, OutsideSegment, Coast),          // len: 262m
 			(4286, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2159, OutsideSegment, Accelerate),        // len: 2159m
 			(2159, 2608, OutsideSegment, Coast),          // len: 449m
@@ -599,7 +599,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2888, 3442, OutsideSegment, Coast),          // len: 554m
 			(3442, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5414, OutsideSegment, Accelerate),        // len: 5414m
 			(5414, 5567, OutsideSegment, Coast),          // len: 153m
@@ -610,7 +610,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7363, 7387, OutsideSegment, Roll),           // len: 24m
 			(7387, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5227, OutsideSegment, Accelerate),        // len: 5227m
 			(5227, 5522, OutsideSegment, Coast),          // len: 295m
@@ -618,11 +618,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6063, 6289, OutsideSegment, Coast),          // len: 226m
 			(6289, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4472, OutsideSegment, Accelerate),        // len: 4472m
 			(5152, 5423, OutsideSegment, Accelerate),     // len: 271m
@@ -630,7 +630,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6119, 6381, OutsideSegment, Coast),          // len: 262m
 			(6381, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -644,7 +644,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5509, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_NoADAS_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -657,13 +657,13 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4771, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4037, OutsideSegment, Accelerate),        // len: 4037m
 			(4037, 5332, WithinSegment, Accelerate),      // len: 1295m
 			(5332, 5897, UseCase1, Roll),                 // len: 565m
 			(5897, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4387, OutsideSegment, Accelerate),        // len: 4387m
 			(4387, 5262, WithinSegment, Accelerate),      // len: 875m
@@ -674,7 +674,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7467, 7529, WithinSegment, Roll),            // len: 62m
 			(7529, 8061, OutsideSegment, Roll),           // len: 532m
 			(8061, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3862, OutsideSegment, Accelerate),        // len: 3862m
 			(3862, 4842, WithinSegment, Accelerate),      // len: 980m
@@ -684,7 +684,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7143, 7266, WithinSegment, Coast),           // len: 123m
 			(7266, 7556, OutsideSegment, Coast),          // len: 290m
 			(7556, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 630, OutsideSegment, Accelerate),         // len: 630m
 			(630, 1809, WithinSegment, Accelerate),       // len: 1179m
@@ -698,7 +698,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6669, 6792, WithinSegment, Coast),           // len: 123m
 			(6792, 7070, OutsideSegment, Coast),          // len: 278m
 			(7070, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 2019, WithinSegment, Accelerate),       // len: 1365m
@@ -708,7 +708,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3735, 4048, WithinSegment, Coast),           // len: 313m
 			(4048, 4251, OutsideSegment, Coast),          // len: 203m
 			(4251, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 665, OutsideSegment, Accelerate),         // len: 665m
 			(665, 2019, WithinSegment, Accelerate),       // len: 1354m
@@ -717,7 +717,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3332, 3344, WithinSegment, Roll),            // len: 12m
 			(3344, 3461, OutsideSegment, Roll),           // len: 117m
 			(3461, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3920, OutsideSegment, Accelerate),        // len: 3920m
 			(3920, 5017, WithinSegment, Accelerate),      // len: 1097m
@@ -727,7 +727,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6534, 6866, WithinSegment, Coast),           // len: 332m
 			(6866, 7262, OutsideSegment, Coast),          // len: 396m
 			(7262, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3734, OutsideSegment, Accelerate),        // len: 3734m
 			(3734, 4644, WithinSegment, Accelerate),      // len: 910m
@@ -736,10 +736,10 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5937, 6079, WithinSegment, Roll),            // len: 142m
 			(6079, 6280, OutsideSegment, Roll),           // len: 201m
 			(6280, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4472, WithinSegment, Accelerate),      // len: 925m
@@ -765,7 +765,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6101, 6212, WithinSegment, Coast),           // len: 111m
 			(6212, 6502, OutsideSegment, Coast),          // len: 290m
 			(6502, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -789,7 +789,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5205, 5524, OutsideSegment, Roll),           // len: 319m
 			(5524, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_P3_PCC123EcoRollEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -812,7 +812,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3844, 4508, OutsideSegment, Brake),          // len: 664m
 			(4508, 4787, OutsideSegment, Roll),           // len: 279m
 			(4787, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4037, OutsideSegment, Accelerate),        // len: 4037m
 			(4037, 5344, WithinSegment, Accelerate),      // len: 1307m
@@ -820,7 +820,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5899, 5922, OutsideSegment, Coast),          // len: 23m
 			(5922, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4387, OutsideSegment, Accelerate),        // len: 4387m
 			(4387, 5274, WithinSegment, Accelerate),      // len: 887m
@@ -831,7 +831,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7475, 7524, WithinSegment, Roll),            // len: 49m
 			(7524, 8069, OutsideSegment, Roll),           // len: 545m
 			(8069, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3862, OutsideSegment, Accelerate),        // len: 3862m
 			(3862, 4842, WithinSegment, Accelerate),      // len: 980m
@@ -841,7 +841,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7145, 7269, WithinSegment, Coast),           // len: 124m
 			(7269, 7570, OutsideSegment, Coast),          // len: 301m
 			(7570, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 630, OutsideSegment, Accelerate),         // len: 630m
 			(630, 1797, WithinSegment, Accelerate),       // len: 1167m
@@ -855,7 +855,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6674, 6797, WithinSegment, Coast),           // len: 123m
 			(6797, 7086, OutsideSegment, Coast),          // len: 289m
 			(7086, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 2019, WithinSegment, Accelerate),       // len: 1365m
@@ -865,7 +865,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3725, 4050, WithinSegment, Coast),           // len: 325m
 			(4050, 4277, OutsideSegment, Coast),          // len: 227m
 			(4277, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 665, OutsideSegment, Accelerate),         // len: 665m
 			(665, 2019, WithinSegment, Accelerate),       // len: 1354m
@@ -874,7 +874,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3299, 3346, WithinSegment, Roll),            // len: 47m
 			(3346, 3487, OutsideSegment, Roll),           // len: 141m
 			(3487, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3920, OutsideSegment, Accelerate),        // len: 3920m
 			(3920, 5017, WithinSegment, Accelerate),      // len: 1097m
@@ -884,7 +884,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6548, 6868, WithinSegment, Coast),           // len: 320m
 			(6868, 7287, OutsideSegment, Coast),          // len: 419m
 			(7287, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3734, OutsideSegment, Accelerate),        // len: 3734m
 			(3734, 4644, WithinSegment, Accelerate),      // len: 910m
@@ -893,10 +893,10 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5915, 6082, WithinSegment, Roll),            // len: 167m
 			(6082, 6296, OutsideSegment, Roll),           // len: 214m
 			(6296, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4413, WithinSegment, Accelerate),      // len: 866m
@@ -926,7 +926,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6105, 6216, WithinSegment, Coast),           // len: 111m
 			(6216, 6506, OutsideSegment, Coast),          // len: 290m
 			(6506, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -958,7 +958,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5629, 5649, OutsideSegment, Roll),           // len: 20m
 			(5649, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_P4_PCC123EcoRollEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -987,14 +987,14 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4666, 4775, OutsideSegment, Coast),          // len: 109m
 			(4775, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4037, OutsideSegment, Accelerate),        // len: 4037m
 			(4037, 5344, WithinSegment, Accelerate),      // len: 1307m
 			(5344, 5899, UseCase1, Roll),                 // len: 555m
 			(5899, 5922, OutsideSegment, Coast),          // len: 23m
 			(5922, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4387, OutsideSegment, Accelerate),        // len: 4387m
 			(4387, 5274, WithinSegment, Accelerate),      // len: 887m
@@ -1005,7 +1005,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7277, 7522, WithinSegment, Coast),           // len: 245m
 			(7522, 7797, OutsideSegment, Coast),          // len: 275m
 			(7797, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3862, OutsideSegment, Accelerate),        // len: 3862m
 			(3862, 4842, WithinSegment, Accelerate),      // len: 980m
@@ -1015,7 +1015,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7083, 7268, WithinSegment, Coast),           // len: 185m
 			(7268, 7520, OutsideSegment, Coast),          // len: 252m
 			(7520, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 630, OutsideSegment, Accelerate),         // len: 630m
 			(630, 1809, WithinSegment, Accelerate),       // len: 1179m
@@ -1030,7 +1030,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6623, 6795, WithinSegment, Coast),           // len: 172m
 			(6795, 7036, OutsideSegment, Coast),          // len: 241m
 			(7036, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 2019, WithinSegment, Accelerate),       // len: 1365m
@@ -1042,7 +1042,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3940, 4049, WithinSegment, Roll),            // len: 109m
 			(4049, 4371, OutsideSegment, Roll),           // len: 322m
 			(4371, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 665, OutsideSegment, Accelerate),         // len: 665m
 			(665, 2019, WithinSegment, Accelerate),       // len: 1354m
@@ -1051,7 +1051,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3288, 3347, WithinSegment, Roll),            // len: 59m
 			(3347, 3488, OutsideSegment, Roll),           // len: 141m
 			(3488, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3920, OutsideSegment, Accelerate),        // len: 3920m
 			(3920, 5017, WithinSegment, Accelerate),      // len: 1097m
@@ -1061,7 +1061,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6398, 6864, WithinSegment, Coast),           // len: 466m
 			(6864, 7137, OutsideSegment, Coast),          // len: 273m
 			(7137, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3734, OutsideSegment, Accelerate),        // len: 3734m
 			(3734, 4644, WithinSegment, Accelerate),      // len: 910m
@@ -1070,10 +1070,10 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5916, 6083, WithinSegment, Roll),            // len: 167m
 			(6083, 6296, OutsideSegment, Roll),           // len: 213m
 			(6296, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4419, WithinSegment, Accelerate),      // len: 872m
@@ -1095,7 +1095,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6459, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1117,7 +1117,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5044, 5432, OutsideSegment, Coast),          // len: 388m
 			(5432, 5452, OutsideSegment, Roll),           // len: 20m
 			(5452, 1e6, OutsideSegment, Accelerate));
-		[Test]
+		[TestCase]
 		public void Class5_P25_PCC123EcoRollEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1140,14 +1140,14 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4727, 4746, OutsideSegment, Roll),           // len: 19m
 			(4746, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5531, OutsideSegment, Accelerate),        // len: 5531m
 			(5531, 5577, OutsideSegment, Coast),          // len: 46m
 			(5577, 6085, OutsideSegment, Roll),           // len: 508m
 			(6085, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5892, OutsideSegment, Accelerate),        // len: 5892m
 			(5892, 6376, OutsideSegment, Roll),           // len: 484m
@@ -1155,7 +1155,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7481, 7874, OutsideSegment, Coast),          // len: 393m
 			(7874, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5367, OutsideSegment, Accelerate),        // len: 5367m
 			(5367, 5402, OutsideSegment, Coast),          // len: 35m
@@ -1164,7 +1164,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7247, 7510, OutsideSegment, Coast),          // len: 263m
 			(7510, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2124, OutsideSegment, Accelerate),        // len: 2124m
 			(2124, 2265, OutsideSegment, Coast),          // len: 141m
@@ -1177,7 +1177,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6776, 7026, OutsideSegment, Coast),          // len: 250m
 			(7026, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2159, OutsideSegment, Accelerate),        // len: 2159m
 			(2159, 2206, OutsideSegment, Coast),          // len: 47m
@@ -1189,7 +1189,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4025, 4287, OutsideSegment, Coast),          // len: 262m
 			(4287, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2159, OutsideSegment, Accelerate),        // len: 2159m
 			(2159, 2206, OutsideSegment, Coast),          // len: 47m
@@ -1201,7 +1201,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3330, 3544, OutsideSegment, Coast),          // len: 214m
 			(3544, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5414, OutsideSegment, Accelerate),        // len: 5414m
 			(5414, 5567, OutsideSegment, Coast),          // len: 153m
@@ -1213,7 +1213,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7387, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5227, OutsideSegment, Accelerate),        // len: 5227m
 			(5227, 5262, OutsideSegment, Coast),          // len: 35m
@@ -1222,11 +1222,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6063, 6289, OutsideSegment, Coast),          // len: 226m
 			(6289, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4472, OutsideSegment, Accelerate),        // len: 4472m
 			(4472, 4492, OutsideSegment, Roll),           // len: 20m
@@ -1251,7 +1251,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6119, 6381, OutsideSegment, Coast),          // len: 262m
 			(6381, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1266,7 +1266,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5509, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollWithoutEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1280,14 +1280,14 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4771, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5531, OutsideSegment, Accelerate),        // len: 5531m
 			(5531, 5577, OutsideSegment, Coast),          // len: 46m
 			(5577, 6085, OutsideSegment, Roll),           // len: 508m
 			(6085, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5892, OutsideSegment, Accelerate),        // len: 5892m
 			(5892, 6376, OutsideSegment, Roll),           // len: 484m
@@ -1295,7 +1295,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7481, 7874, OutsideSegment, Coast),          // len: 393m
 			(7874, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5367, OutsideSegment, Accelerate),        // len: 5367m
 			(5367, 5402, OutsideSegment, Coast),          // len: 35m
@@ -1305,7 +1305,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7510, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2124, OutsideSegment, Accelerate),        // len: 2124m
 			(2124, 2265, OutsideSegment, Coast),          // len: 141m
@@ -1318,7 +1318,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6776, 7026, OutsideSegment, Coast),          // len: 250m
 			(7026, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2159, OutsideSegment, Accelerate),        // len: 2159m
 			(2159, 2206, OutsideSegment, Coast),          // len: 47m
@@ -1330,7 +1330,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4025, 4287, OutsideSegment, Coast),          // len: 262m
 			(4287, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2159, OutsideSegment, Accelerate),        // len: 2159m
 			(2159, 2206, OutsideSegment, Coast),          // len: 47m
@@ -1342,7 +1342,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3330, 3544, OutsideSegment, Coast),          // len: 214m
 			(3544, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5414, OutsideSegment, Accelerate),        // len: 5414m
 			(5414, 5567, OutsideSegment, Coast),          // len: 153m
@@ -1353,7 +1353,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7363, 7387, OutsideSegment, Roll),           // len: 24m
 			(7387, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5227, OutsideSegment, Accelerate),        // len: 5227m
 			(5227, 5262, OutsideSegment, Coast),          // len: 35m
@@ -1362,11 +1362,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6063, 6289, OutsideSegment, Coast),          // len: 226m
 			(6289, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4472, OutsideSegment, Accelerate),        // len: 4472m
 			(4472, 4492, OutsideSegment, Roll),           // len: 20m
@@ -1391,7 +1391,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6119, 6381, OutsideSegment, Coast),          // len: 262m
 			(6381, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1403,7 +1403,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5509, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_EcoRollEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1414,7 +1414,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4533, 4752, OutsideSegment, Coast),          // len: 219m
 			(4771, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4037, OutsideSegment, Accelerate),        // len: 4037m
 			(4037, 5344, WithinSegment, Accelerate),      // len: 1307m
@@ -1423,7 +1423,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5923, 5993, OutsideSegment, Roll),           // len: 70m
 			(5993, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4387, OutsideSegment, Accelerate),        // len: 4387m
 			(4387, 5274, WithinSegment, Accelerate),      // len: 887m
@@ -1435,7 +1435,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7528, 8025, OutsideSegment, Coast),          // len: 497m
 			(8025, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3862, OutsideSegment, Accelerate),        // len: 3862m
 			(3862, 4842, WithinSegment, Accelerate),      // len: 980m
@@ -1446,7 +1446,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7269, 7559, OutsideSegment, Coast),          // len: 290m
 			(7559, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 630, OutsideSegment, Accelerate),         // len: 630m
 			(630, 1809, WithinSegment, Accelerate),       // len: 1179m
@@ -1462,7 +1462,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6797, 7075, OutsideSegment, Coast),          // len: 278m
 			(7075, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 2019, WithinSegment, Accelerate),       // len: 1365m
@@ -1473,7 +1473,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4051, 4265, OutsideSegment, Coast),          // len: 214m
 			(4265, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 665, OutsideSegment, Accelerate),         // len: 665m
 			(665, 2019, WithinSegment, Accelerate),       // len: 1354m
@@ -1483,7 +1483,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3347, 3488, OutsideSegment, Roll),           // len: 141m
 			(3488, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3920, OutsideSegment, Accelerate),        // len: 3920m
 			(3920, 5017, WithinSegment, Accelerate),      // len: 1097m
@@ -1494,7 +1494,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6868, 7263, OutsideSegment, Coast),          // len: 395m
 			(7263, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3734, OutsideSegment, Accelerate),        // len: 3734m
 			(3734, 4644, WithinSegment, Accelerate),      // len: 910m
@@ -1504,11 +1504,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6083, 6308, OutsideSegment, Roll),           // len: 225m
 			(6308, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4472, WithinSegment, Accelerate),      // len: 925m
@@ -1520,7 +1520,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6220, 6497, OutsideSegment, Coast),          // len: 277m
 			(6497, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1535,7 +1535,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5509, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollWithoutEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1549,7 +1549,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4771, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4037, OutsideSegment, Accelerate),        // len: 4037m
 			(4037, 5344, WithinSegment, Accelerate),      // len: 1307m
@@ -1558,7 +1558,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5923, 5993, OutsideSegment, Roll),           // len: 70m
 			(5993, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4387, OutsideSegment, Accelerate),        // len: 4387m
 			(4387, 5274, WithinSegment, Accelerate),      // len: 887m
@@ -1570,7 +1570,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7528, 8025, OutsideSegment, Coast),          // len: 497m
 			(8025, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3862, OutsideSegment, Accelerate),        // len: 3862m
 			(3862, 4842, WithinSegment, Accelerate),      // len: 980m
@@ -1581,7 +1581,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7269, 7559, OutsideSegment, Coast),          // len: 290m
 			(7559, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 630, OutsideSegment, Accelerate),         // len: 630m
 			(630, 1809, WithinSegment, Accelerate),       // len: 1179m
@@ -1597,7 +1597,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6797, 7075, OutsideSegment, Coast),          // len: 278m
 			(7075, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 2019, WithinSegment, Accelerate),       // len: 1365m
@@ -1608,7 +1608,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4051, 4265, OutsideSegment, Coast),          // len: 214m
 			(4265, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 665, OutsideSegment, Accelerate),         // len: 665m
 			(665, 2019, WithinSegment, Accelerate),       // len: 1354m
@@ -1618,7 +1618,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3347, 3488, OutsideSegment, Roll),           // len: 141m
 			(3488, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3920, OutsideSegment, Accelerate),        // len: 3920m
 			(3920, 5017, WithinSegment, Accelerate),      // len: 1097m
@@ -1629,7 +1629,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6868, 7263, OutsideSegment, Coast),          // len: 395m
 			(7263, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3734, OutsideSegment, Accelerate),        // len: 3734m
 			(3734, 4644, WithinSegment, Accelerate),      // len: 910m
@@ -1640,11 +1640,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6308, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4472, WithinSegment, Accelerate),      // len: 925m
@@ -1657,7 +1657,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6497, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
@@ -1672,7 +1672,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5509, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_PCC123EcoRollEngineStop_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 4, OutsideSegment, Accelerate),           // len: 4m
diff --git a/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsPEV.cs b/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsPEV.cs
index af0588c87984d9171a00e72d42b6aee4f94a188d..c30a29556f558b95916449b9654460f55067e5dd 100644
--- a/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsPEV.cs
+++ b/VectoCore/VectoCoreTest/Integration/ADAS/ADASTestsPEV.cs
@@ -30,20 +30,20 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 		#region E2
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5647, OutsideSegment, Accelerate),        // len: 5647m
 			(5647, 5776, OutsideSegment, Coast),          // len: 129m
 			(5776, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 6196, OutsideSegment, Accelerate),        // len: 6196m
 			(6196, 7546, OutsideSegment, Coast),          // len: 1350m
 			(7546, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5496, OutsideSegment, Accelerate),        // len: 5496m
 			(5496, 5849, OutsideSegment, Coast),          // len: 353m
@@ -52,7 +52,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7373, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2147, OutsideSegment, Accelerate),        // len: 2147m
 			(2147, 2300, OutsideSegment, Coast),          // len: 153m
@@ -64,7 +64,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6649, 6899, OutsideSegment, Coast),          // len: 250m
 			(6899, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2194, OutsideSegment, Accelerate),        // len: 2194m
 			(2194, 2358, OutsideSegment, Coast),          // len: 164m
@@ -74,7 +74,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3946, 4160, OutsideSegment, Coast),          // len: 214m
 			(4160, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 2206, OutsideSegment, Accelerate),        // len: 2206m
 			(2206, 2381, OutsideSegment, Coast),          // len: 175m
@@ -82,7 +82,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2918, 3329, OutsideSegment, Coast),          // len: 411m
 			(3329, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5437, OutsideSegment, Accelerate),        // len: 5437m
 			(5437, 5614, OutsideSegment, Coast),          // len: 177m
@@ -90,7 +90,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6467, 6897, OutsideSegment, Coast),          // len: 430m
 			(6897, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 5332, OutsideSegment, Accelerate),        // len: 5332m
 			(5332, 5722, OutsideSegment, Coast),          // len: 390m
@@ -98,18 +98,18 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5962, 6177, OutsideSegment, Coast),          // len: 215m
 			(6177, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4794, OutsideSegment, Accelerate),        // len: 4794m
 			(5546, 6086, OutsideSegment, Brake),          // len: 540m
 			(6086, 6325, OutsideSegment, Coast),          // len: 239m
 			(6325, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 11, OutsideSegment, Accelerate),          // len: 11m
@@ -120,7 +120,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5160, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_NoADAS_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 11, OutsideSegment, Accelerate),          // len: 11m
@@ -130,21 +130,21 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4508, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4107, OutsideSegment, Accelerate),        // len: 4107m
 			(4107, 5496, WithinSegment, Accelerate),      // len: 1389m
 			(5496, 5832, UseCase1, Coast),                // len: 336m
 			(5832, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4585, OutsideSegment, Accelerate),        // len: 4585m
 			(4585, 5542, WithinSegment, Accelerate),      // len: 957m
 			(5542, 7326, UseCase1, Coast),                // len: 1784m
 			(7326, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3955, OutsideSegment, Accelerate),        // len: 3955m
 			(3955, 4959, WithinSegment, Accelerate),      // len: 1004m
@@ -155,7 +155,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7185, 7417, OutsideSegment, Coast),          // len: 232m
 			(7417, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 1914, WithinSegment, Accelerate),       // len: 1260m
@@ -167,7 +167,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6709, 6925, OutsideSegment, Coast),          // len: 216m
 			(6925, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 689, OutsideSegment, Accelerate),         // len: 689m
 			(689, 2089, WithinSegment, Accelerate),       // len: 1400m
@@ -176,7 +176,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2996, 3987, UseCase1, Coast),                // len: 991m
 			(3987, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 677, OutsideSegment, Accelerate),         // len: 677m
 			(677, 2101, WithinSegment, Accelerate),       // len: 1424m
@@ -185,7 +185,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2682, 3314, UseCase1, Coast),                // len: 632m
 			(3314, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3932, OutsideSegment, Accelerate),        // len: 3932m
 			(3932, 5111, WithinSegment, Accelerate),      // len: 1179m
@@ -195,18 +195,18 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7032, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3792, OutsideSegment, Accelerate),        // len: 3792m
 			(3792, 4900, WithinSegment, Accelerate),      // len: 1108m
 			(4900, 6014, UseCase1, Coast),                // len: 1114m
 			(6014, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4794, WithinSegment, Accelerate),      // len: 1247m
@@ -234,7 +234,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6140, 6347, OutsideSegment, Coast),          // len: 207m
 			(6347, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 11, OutsideSegment, Accelerate),          // len: 11m
@@ -256,7 +256,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5160, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC123_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 11, OutsideSegment, Accelerate),          // len: 11m
@@ -278,21 +278,21 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4107, OutsideSegment, Accelerate),        // len: 4107m
 			(4107, 5496, WithinSegment, Accelerate),      // len: 1389m
 			(5496, 5832, UseCase1, Coast),                // len: 336m
 			(5832, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4585, OutsideSegment, Accelerate),        // len: 4585m
 			(4585, 5542, WithinSegment, Accelerate),      // len: 957m
 			(5542, 7326, UseCase1, Coast),                // len: 1784m
 			(7326, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3955, OutsideSegment, Accelerate),        // len: 3955m
 			(3955, 4959, WithinSegment, Accelerate),      // len: 1004m
@@ -303,7 +303,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7184, 7374, OutsideSegment, Coast),          // len: 190m
 			(7374, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 1914, WithinSegment, Accelerate),       // len: 1260m
@@ -317,7 +317,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6718, 6897, OutsideSegment, Coast),          // len: 179m
 			(6897, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 689, OutsideSegment, Accelerate),         // len: 689m
 			(689, 2089, WithinSegment, Accelerate),       // len: 1400m
@@ -326,7 +326,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2996, 3987, UseCase1, Coast),                // len: 991m
 			(3987, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 689, OutsideSegment, Accelerate),         // len: 689m
 			(689, 2101, WithinSegment, Accelerate),       // len: 1412m
@@ -336,7 +336,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3291, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3932, OutsideSegment, Accelerate),        // len: 3932m
 			(3932, 5111, WithinSegment, Accelerate),      // len: 1179m
@@ -347,7 +347,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6630, 6903, OutsideSegment, Coast),          // len: 273m
 			(6903, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3792, OutsideSegment, Accelerate),        // len: 3792m
 			(3792, 4900, WithinSegment, Accelerate),      // len: 1108m
@@ -355,11 +355,11 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6014, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3547, OutsideSegment, Accelerate),        // len: 3547m
 			(3547, 4794, WithinSegment, Accelerate),      // len: 1247m
@@ -387,7 +387,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6141, 6320, OutsideSegment, Coast),          // len: 179m
 			(6320, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 11, OutsideSegment, Accelerate),          // len: 11m
@@ -409,7 +409,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5160, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E2_PCC12_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 11, OutsideSegment, Accelerate),          // len: 11m
@@ -434,7 +434,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 		#region E3
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4130, OutsideSegment, Accelerate),        // len: 4130m
 			(4130, 5472, WithinSegment, Accelerate),      // len: 1342m
@@ -442,7 +442,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5808, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4655, OutsideSegment, Accelerate),        // len: 4655m
 			(4655, 5484, WithinSegment, Accelerate),      // len: 829m
@@ -450,7 +450,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7239, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3979, OutsideSegment, Accelerate),        // len: 3979m
 			(3979, 4936, WithinSegment, Accelerate),      // len: 957m
@@ -463,7 +463,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7149, 7430, OutsideSegment, Coast),          // len: 281m
 			(7430, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 1902, WithinSegment, Accelerate),       // len: 1248m
@@ -475,7 +475,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6683, 6938, OutsideSegment, Coast),          // len: 255m
 			(6938, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 700, OutsideSegment, Accelerate),         // len: 700m
 			(700, 2077, WithinSegment, Accelerate),       // len: 1377m
@@ -486,7 +486,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(3967, 4049, OutsideSegment, Coast),          // len: 82m
 			(4049, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 700, OutsideSegment, Accelerate),         // len: 700m
 			(700, 2089, WithinSegment, Accelerate),       // len: 1389m
@@ -495,7 +495,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2646, 3265, UseCase1, Coast),                // len: 619m
 			(3265, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3944, OutsideSegment, Accelerate),        // len: 3944m
 			(3944, 5099, WithinSegment, Accelerate),      // len: 1155m
@@ -505,18 +505,18 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7123, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3815, OutsideSegment, Accelerate),        // len: 3815m
 			(3815, 4854, WithinSegment, Accelerate),      // len: 1039m
 			(4854, 5995, UseCase1, Coast),                // len: 1141m
 			(5995, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CaseJ() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3559, OutsideSegment, Accelerate),        // len: 3559m
 			(3559, 5374, WithinSegment, Accelerate),      // len: 1815m
@@ -528,7 +528,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6120, 6364, OutsideSegment, Coast),          // len: 244m
 			(6364, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 3410, OutsideSegment, Accelerate),        // len: 3410m
@@ -538,7 +538,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5206, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E3_PCC123_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 3614, OutsideSegment, Accelerate),        // len: 3614m
@@ -551,7 +551,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 		#region E4
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseA() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4130, OutsideSegment, Accelerate),        // len: 4130m
 			(4130, 5449, WithinSegment, Accelerate),      // len: 1319m
@@ -560,14 +560,14 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseB() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 4644, OutsideSegment, Accelerate),        // len: 4644m
 			(4644, 5437, WithinSegment, Accelerate),      // len: 793m
 			(5437, 7260, UseCase1, Coast),                // len: 1823m
 			(7260, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseC() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3979, OutsideSegment, Accelerate),        // len: 3979m
 			(3979, 4912, WithinSegment, Accelerate),      // len: 933m
@@ -578,7 +578,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7151, 7528, OutsideSegment, Coast),          // len: 377m
 			(7528, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseD() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 654, OutsideSegment, Accelerate),         // len: 654m
 			(654, 1879, WithinSegment, Accelerate),       // len: 1225m
@@ -591,7 +591,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(7002, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseE() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 689, OutsideSegment, Accelerate),         // len: 689m
 			(689, 2066, WithinSegment, Accelerate),       // len: 1377m
@@ -602,7 +602,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(4054, 1e6, OutsideSegment, Accelerate));
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseF() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 700, OutsideSegment, Accelerate),         // len: 700m
 			(700, 2077, WithinSegment, Accelerate),       // len: 1377m
@@ -611,7 +611,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(2611, 3272, UseCase1, Coast),                // len: 661m
 			(3272, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseG() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3941, OutsideSegment, Accelerate),        // len: 3941m
 			(3941, 5082, WithinSegment, Accelerate),      // len: 1141m
@@ -622,18 +622,18 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 
 
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseH() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3815, OutsideSegment, Accelerate),        // len: 3815m
 			(3815, 4807, WithinSegment, Accelerate),      // len: 992m
 			(4807, 5995, UseCase1, Coast),                // len: 1188m
 			(5995, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseI() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CaseJE4() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 3430, OutsideSegment, Accelerate),        // len: 3430m
 			(3430, 5236, WithinSegment, Accelerate),      // len: 1806m
@@ -642,7 +642,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(6424, 6531, OutsideSegment, Coast),          // len: 107m
 			(6531, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CrestCoast1() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 3417, OutsideSegment, Accelerate),        // len: 3417m
@@ -651,7 +651,7 @@ namespace TUGraz.VectoCore.Tests.Integration.ADAS
 			(5004, 5383, OutsideSegment, Coast),          // len: 379m
 			(5383, 1e6, OutsideSegment, Accelerate));
 
-		[Test]
+		[TestCase]
 		public void Class5_E4_PCC123_CrestCoast2() => TestPCC(MethodBase.GetCurrentMethod().Name.Split('_').Slice(0, -1).JoinString("_"), MethodBase.GetCurrentMethod().Name.Split('_').Last(),
 			(0, 0, OutsideSegment, Halt),                 // len: 0m
 			(0, 3612, OutsideSegment, Accelerate),        // len: 3612m
diff --git a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs
index d5131a72069c1b525153a1a1afcc335fa3ffbb45..9f8fae4d7ebdf2e75a4d2196c35f92de861e1187 100644
--- a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/AuxDemandTest.cs
@@ -60,7 +60,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		[TestCase(12000, 1256, 148, 148, 6087.03221)]
 		[TestCase(12000, 1256, -45, -30, 8954.1396)]
 		[TestCase(15700, 1319, -45.79263, -24.0441, 9093.9473)]
@@ -78,7 +78,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries
 			Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-2);
 		}
 
-		[Test]
+		[TestCase]
 		public void AuxFCConsumptionTest()
 		{
 			var driveLinePower = 148;
diff --git a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs
index 97edc78a5877fe3468dbe3a5ff2028f9f82dcb36..59c137942f6abd9896ecc3ff5a5b0394470709a3 100644
--- a/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/BusAuxiliaries/BusAdapterTest.cs
@@ -51,7 +51,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries
 		}
 
 
-		[Test]
+		[TestCase]
 		[TestCase(12000, 1256, 148, 148, 6087.03221)]
 		[TestCase(12000, 1256, -48, -148, 6087.03221)]
 		[TestCase(12000, 1256, 48, -148, 6087.03221)]
@@ -75,7 +75,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries
 			Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-2);
 		}
 
-		[Test]
+		[TestCase]
 		[TestCase(12000, 1256, 148, 148, 6087.0322)]
 		[TestCase(12000, 1256, -28, -27, 6087.0322)]
 		[TestCase(12000, 1256, -28, -29, 6087.0322)]
@@ -106,7 +106,7 @@ namespace TUGraz.VectoCore.Tests.Integration.BusAuxiliaries
 			Assert.AreEqual(expectedPowerDemand, (torque * engineSpeed).Value(), 1e-2);
 		}
 
-		[Test]
+		[TestCase]
 		[TestCase(12000, 1256, -48, -28, 8954.1429)] // smart PS active - power demand below engine drag
 		[TestCase(12000, 1256, 48, -28, 6087.0322)] // no smart aux active - positive power demand
 		[TestCase(12000, 800, -48, -28, 8281.5129)] // smart PS active - power demand below engine drag
diff --git a/VectoCore/VectoCoreTest/Integration/EngineOnlyCycle/EngineOnlyCycleTest.cs b/VectoCore/VectoCoreTest/Integration/EngineOnlyCycle/EngineOnlyCycleTest.cs
index 2a1d957a0504125429256daebb7ffcb0ee3f92fb..5bca22c3de3d8540b2baa0fc74079ed88f4ea58c 100644
--- a/VectoCore/VectoCoreTest/Integration/EngineOnlyCycle/EngineOnlyCycleTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/EngineOnlyCycle/EngineOnlyCycleTest.cs
@@ -130,7 +130,7 @@ namespace TUGraz.VectoCore.Tests.Integration.EngineOnlyCycle
 			ResultFileHelper.TestModFile(modalResultFile, modFile + Constants.FileExtensions.ModDataFile);
 		}
 
-		[Test]
+		[TestCase]
 		public void AssembleEngineOnlyPowerTrain()
 		{
 			var dataWriter = new MockModalDataContainer();
diff --git a/VectoCore/VectoCoreTest/Integration/FullCycleDeclarationTest.cs b/VectoCore/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
index c50165ca70f39019ae92441219f18f642869aace..ef936822099a928ec60d41e926040a6d9295ba9e 100644
--- a/VectoCore/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/FullCycleDeclarationTest.cs
@@ -71,7 +71,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Truck40t_LongHaulCycle_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("LongHaul");
@@ -83,7 +83,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Truck40t_RegionalDeliveryCycle_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("RegionalDelivery");
@@ -95,7 +95,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Truck40t_UrbanDeliveryCycle_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("UrbanDelivery");
@@ -107,7 +107,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Truck40t_MunicipalCycle_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("MunicipalUtility");
@@ -119,7 +119,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Truck40t_ConstructionCycle_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Construction");
@@ -131,7 +131,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Truck40t_HeavyUrbanCycle_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("HeavyUrban");
@@ -143,7 +143,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 			Assert.IsTrue(run.FinishedWithoutErrors);
 		}
 
-		[Test]
+		[TestCase]
 		public void Truck40t_SubUrbanCycle_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.ReadDeclarationCycle("Suburban");
@@ -350,7 +350,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		}
 
 
-		[Test]
+		[TestCase]
 		public void DeclarationClass9PTOTest()
 		{
 			var inputData = JSONInputDataFactory.ReadJsonJob(Class9RigidTruckPTOJob);
@@ -372,7 +372,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 			Assert.IsTrue(jobContainer.Runs.All(r => r.Success), string.Concat(jobContainer.Runs.Select(r => r.ExecException)));
 		}
 
-		[Test]
+		[TestCase]
 		public void DeclarationClass5PrimaryRetarder()
 		{
 			var inputData = JSONInputDataFactory.ReadJsonJob(Class5TractorDeclPrimaryRetarder);
diff --git a/VectoCore/VectoCoreTest/Integration/SimulationRuns/FullPowertrain.cs b/VectoCore/VectoCoreTest/Integration/SimulationRuns/FullPowertrain.cs
index 72963f38040064153f418609035e513015c47f50..4dfc179aca1dd162c11ba9f7b725c2080e16fd6e 100644
--- a/VectoCore/VectoCoreTest/Integration/SimulationRuns/FullPowertrain.cs
+++ b/VectoCore/VectoCoreTest/Integration/SimulationRuns/FullPowertrain.cs
@@ -151,7 +151,7 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Test_FullPowertrain()
 		{
 			var gearboxData = CreateGearboxData();
@@ -332,7 +332,7 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Test_FullPowerTrain_JobFile()
 		{
 			const string jobFile = @"TestData\job.vecto";
diff --git a/VectoCore/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs b/VectoCore/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs
index e4402a76a13ea8f03e175b3fa9138038740d487f..cba3cbc4320426276fec74b6c97d6995d31d9fc1 100644
--- a/VectoCore/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs
+++ b/VectoCore/VectoCoreTest/Integration/SimulationRuns/MinimalPowertrain.cs
@@ -74,7 +74,7 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestWheelsAndEngineInitialize()
 		{
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile, 1);
@@ -214,7 +214,7 @@ namespace TUGraz.VectoCore.Tests.Integration.SimulationRuns
 			NLog.LogManager.EnableLogging();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestWheelsAndEngineLookahead()
 		{
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile, 1);
diff --git a/VectoCore/VectoCoreTest/Integration/XMLReportTest.cs b/VectoCore/VectoCoreTest/Integration/XMLReportTest.cs
index bd0103cb4a0dcf9c48a61b7c31faa8c9c0f54a24..d5992e6031481ab9a6a19534778b4aa568974b31 100644
--- a/VectoCore/VectoCoreTest/Integration/XMLReportTest.cs
+++ b/VectoCore/VectoCoreTest/Integration/XMLReportTest.cs
@@ -73,7 +73,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 			xmlInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLReportMetaInformation()
 		{
 			var jobfile = @"Testdata\XML\XMLReaderDeclaration\vecto_vehicle-sample.xml";
@@ -277,7 +277,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMLReportCorrectHashes()
 		{
 			var jobfile = @"Testdata\XML\XMLReaderDeclaration\vecto_vehicle-sample.xml";
@@ -323,7 +323,7 @@ namespace TUGraz.VectoCore.Tests.Integration
 
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLPrimaryVehicleReportTest()
 		{
 			var jobfile = @"Testdata\XML\XMLReaderDeclaration\SchemaVersion2.6_Buses/vecto_vehicle-primary_heavyBus-sample.xml";
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/AirdragDefaultValuesTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/AirdragDefaultValuesTest.cs
index 046a095f1e9bfd259994ec9b0b181f79b4d39dc8..6defc9c2dce4b432f3debf9bc7c5bfd1fd82534a 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/AirdragDefaultValuesTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/AirdragDefaultValuesTest.cs
@@ -45,7 +45,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestClass2()
 		{
 			var file = @"TestData\Integration\DeclarationMode\Class2_RigidTruck_4x2\Class2_RigidTruck_DECL.vecto";
@@ -60,7 +60,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			Assert.AreEqual(7.2, runData[0].AirdragData.DeclaredAirdragArea.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void TestClass5()
 		{
 			var file = @"TestData\Integration\DeclarationMode\Class5_Tractor_4x2\Class5_Tractor_DECL.vecto";
@@ -73,7 +73,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			Assert.AreEqual(8.7, runData[0].AirdragData.DeclaredAirdragArea.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void TestClass9()
 		{
 			var file = @"TestData\Integration\DeclarationMode\Class9_RigidTruck_6x2\Class9_RigidTruck_DECL.vecto";
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
index be28cb0706df312ad93be9bfafe1c1834180462a..255c280cec46a2ce71ce3acdbeb32a865f1be010 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/DeclarationDataTest.cs
@@ -123,7 +123,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
             Assert.IsTrue(tmp.Extrapolated);
         }
 
-        [Test]
+        [TestCase]
         public void WHTCTest()
         {
             var whtc = DeclarationData.WHTCCorrection;
@@ -147,7 +147,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
             }
         }
 
-        [Test]
+        [TestCase]
         public void WHTCLookupTestLongHaul()
         {
             var expected = 1.015501;
@@ -161,7 +161,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
             Assert.AreEqual(expected, lookup, 1e-8);
         }
 
-        [Test]
+        [TestCase]
         public void WHTCLookupTestRegionalDelivery()
         {
             var expected = 1.02708700;
@@ -274,7 +274,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
                 crossWindCorrectionCurve.EffectiveAirDragArea(kmph.KMPHtoMeterPerSecond()));
         }
 
-        [Test]
+        [TestCase]
         public void CrossWindAreaCdxANotSet_DeclarationMode()
         {
             var airDrag = new AirdragData()
@@ -288,7 +288,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
                 "In Speed Dependent (Declaration Mode) Crosswind Correction the CdxA Value can be empty.");
         }
 
-        [Test]
+        [TestCase]
         public void CrossWindAreaCdxANotSet_Other()
         {
             foreach (var correctionMode in EnumHelper.GetValues<CrossWindCorrectionMode>())
@@ -575,7 +575,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
                     new[] { axle1, axle2, axle3, axle4 }.TakeWhile(a => a != null).ToArray()));
         }
 
-        [Test]
+        [TestCase]
         public void Aux_SteeringpumpMultipleLookups()
         {
             // testcase to illustrate modification of lookup-data for steering pump
@@ -970,7 +970,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// trailer in longhaul, always pc formula
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment2Test()
         {
             var vehicleData = new
@@ -1044,7 +1044,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// trailer in longhaul, always pc formula
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment2TestHeavy()
         {
             var vehicleData = new
@@ -1118,7 +1118,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// normal pc formula, no trailer
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment3Test()
         {
             var vehicleData = new
@@ -1172,7 +1172,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// fixed reference weight, trailer only in longhaul
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment4Test()
         {
             var vehicleData = new
@@ -1261,7 +1261,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// fixed reference weight, trailer only in longhaul
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment4VocationalTest()
         {
             var vehicleData = new
@@ -1318,7 +1318,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 5: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment5Test()
         {
             var vehicleData = new
@@ -1407,7 +1407,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 5: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment5VocationalTest()
         {
             var vehicleData = new
@@ -1448,7 +1448,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 9: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment9Test()
         {
             var vehicleData = new
@@ -1555,7 +1555,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 9: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment9VocationalTest()
         {
             var vehicleData = new
@@ -1613,7 +1613,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 10: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment10Test()
         {
             var vehicleData = new
@@ -1704,7 +1704,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 10: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment10VocationalTest()
         {
             var vehicleData = new
@@ -1746,7 +1746,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 11: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment11Test()
         {
             var vehicleData = new
@@ -1868,7 +1868,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 10: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment12Test()
         {
             var vehicleData = new
@@ -1976,7 +1976,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
         /// <summary>
         /// Segment 9: fixed reference weight, trailer always used
         /// </summary>
-        [Test]
+        [TestCase]
         public void Segment16Test()
         {
             var vehicleData = new
@@ -2079,7 +2079,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
             EqualAcceleration(data, 140, 0.5, -0.5);
         }
 
-        [Test]
+        [TestCase]
         public void Declaration_WheelsForT1_Class2()
         {
             var dataProvider =
@@ -2102,7 +2102,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
             CollectionAssert.AreEqual(bodyOnly, runs[5].VehicleData.AxleData.Select(a => a.Inertia.Value()));
         }
 
-        [Test]
+        [TestCase]
         public void Declaration_WheelsForT2_Class4()
         {
             var dataProvider =
@@ -2127,7 +2127,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
             CollectionAssert.AreEqual(bodyOnly, runs[7].VehicleData.AxleData.Select(a => a.Inertia.Value()));
         }
 
-        [Test]
+        [TestCase]
         public void Declaration_WheelsForDefault_Class5()
         {
             var dataProvider =
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/ShiftPolygonTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/ShiftPolygonTest.cs
index 083155a5c7b268d74aace6d8899a933676ac811c..44b0a43b6ac6726bf8df11e32b6e54ff7962b3fa 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/ShiftPolygonTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/ShiftPolygonTest.cs
@@ -73,7 +73,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 		}
 
 
-		[Test]
+		[TestCase]
 		public void IntersectShiftLines1()
 		{
 			var upShift = new[] {
@@ -104,7 +104,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void IntersectShiftLines2()
 		{
 			var upShift = new[] {
@@ -144,7 +144,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void IntersectShiftLines3()
 		{
 			var upShift = new[] {
@@ -185,7 +185,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void IntersectShiftLines4()
 		{
 			var upShift = new[] {
@@ -226,7 +226,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void LimitShiftlines1()
 		{
 			var upShift = new[] {
@@ -255,7 +255,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void LimitShiftlines2()
 		{
 			var upShift = new[] {
@@ -286,7 +286,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void LimitShiftlines3()
 		{
 			var upShift = new[] {
@@ -316,7 +316,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void ShiftPolygonFldMarginTest()
 		{
 			var engineFld = new[] {
@@ -371,7 +371,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void CorrectDownShiftByEngineFldTest()
 		{
 			var downshift = Edge.Create(new Point(10, 10), new Point(22, 20));
@@ -401,7 +401,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			Assert.AreEqual(20, corrected.P2.Y, 1e-3);
 		}
 
-		[Test]
+		[TestCase]
 		public void ComputeShiftPolygonDeclarationTest()
 		{
 			var engineFile = @"TestData\Components\40t_Long_Haul_Truck.veng";
@@ -485,7 +485,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			Assert.AreEqual(0, shiftPolygons.Last().Upshift.Count);
 		}
 
-		[Test]
+		[TestCase]
 		public void ComputeShiftPolygonATDeclarationTest()
 		{
 			var engineFile = @"TestData\Components\40t_Long_Haul_Truck.veng";
@@ -537,7 +537,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 			Assert.AreEqual(0, shiftPolygons.Last().Upshift.Count);
 		}
 
-		[Test]
+		[TestCase]
 		public void ComputeShiftPolygonDeclarationTestConfidentialEngine()
 		{
 			//var engineFldFile = @"E:\QUAM\Downloads\EngineFLD\Map_375c_BB1390_modTUG_R49_375c_BB1386.vfld";
@@ -823,7 +823,7 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 		/// <summary>
 		/// VECTO-517 Shiftpolygon is considered invalid
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void ShiftCurve_ShiftPolygon_Validation_Test()
 		{
 			var vgbs = new[] {
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/AuxTests.cs b/VectoCore/VectoCoreTest/Models/Simulation/AuxTests.cs
index 107a9cb7ca0fb8c8a20844835e7b99fb5f185624..190a47b6deb99a84a88d9cf41fe91d35b8cc69c7 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/AuxTests.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/AuxTests.cs
@@ -69,7 +69,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		}
 
 
-		[Test]
+		[TestCase]
 		public void AuxWriteModFileSumFile()
 
 		{
@@ -152,7 +152,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"AuxWriteModFileSumFile.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void AuxConstant()
 		{
 			var dataWriter = new MockModalDataContainer();
@@ -184,7 +184,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			AssertHelper.AreRelativeEqual(constPower / speed, auxDemand);
 		}
 
-		[Test]
+		[TestCase]
 		public void AuxDirect()
 		{
 			var dataWriter = new MockModalDataContainer();
@@ -213,7 +213,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			}
 		}
 
-		[Test] 
+		[TestCase] 
 		public void AuxAllCombined()
 		{
 			var dataWriter = new MockModalDataContainer();
@@ -268,7 +268,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 
 		
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void AuxReadJobFileDeclarationMode()
 		{
 			var fileWriter = new FileOutputWriter("AuxReadJobFileDeclarationMode");
@@ -283,7 +283,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void AuxReadJobFileEngineeringMode()
 		{
 			var fileWriter = new FileOutputWriter("AuxReadJobFileEngineeringMode");
@@ -297,7 +297,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			jobContainer.AddRuns(runsFactory);
 		}
 
-		[Test]
+		[TestCase]
 		public void AuxDeclarationWrongConfiguration()
 		{
 			var fileWriter = new FileOutputWriter("AuxReadJobFileDeclarationMode");
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/FactoryTest.cs b/VectoCore/VectoCoreTest/Models/Simulation/FactoryTest.cs
index 0d6a7b9724e871587fee0ba6e10f17c7eb3b3f44..2df4d2c4ea6b2521cc50fb659eae9567505b127c 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/FactoryTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/FactoryTest.cs
@@ -58,7 +58,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void CreateDeclarationSimulationRun()
 		{
 			var fileWriter = new FileOutputWriter(DeclarationJobFile);
@@ -109,7 +109,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			Assert.AreEqual(988.9, gearbox.ModelData.Gears[1].ShiftPolygon.Upshift[1].Torque.Value(), 0.1);
 		}
 
-		[Test]
+		[TestCase]
 		public void CreateEngineeringSimulationRun()
 		{
 			var fileWriter = new FileOutputWriter(EngineeringJobFile);
@@ -128,7 +128,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestDistanceCycleInVTPEngineering()
 		{
 			var inputData = JSONInputDataFactory.ReadJsonJob(@"TestData\Jobs\VTPModeWithDistanceCycle.vecto");
@@ -138,7 +138,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestDistanceCycleInEngineOnly()
 		{
 			var inputData = JSONInputDataFactory.ReadJsonJob(@"TestData\Jobs\EngineOnlyJobWithDistanceCycle.vecto");
@@ -147,7 +147,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			AssertHelper.Exception<VectoException>(() => factory.SimulationRuns().ToArray(), "Distance-based cycle can not be simulated in EngineOnly mode");
 		}
 
-		[Test]
+		[TestCase]
 		public void TestMeasuredSpeedCycleInEngineOnly()
 		{
 			var inputData = JSONInputDataFactory.ReadJsonJob(@"TestData\Jobs\EngineOnlyJobWithMeasuredCycle.vecto");
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/GearboxInertiaTest.cs b/VectoCore/VectoCoreTest/Models/Simulation/GearboxInertiaTest.cs
index 8857882a26b4bf050fb753cf3c4cce298e8b23bc..a5a6562546d9d39f5f07cef091634dec243f9ed2 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/GearboxInertiaTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/GearboxInertiaTest.cs
@@ -46,7 +46,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void RunWithGearboxInertia()
 		{
 			var cycleData = "0, 0, 0, 2\n" +
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/GetSectionTest.cs b/VectoCore/VectoCoreTest/Models/Simulation/GetSectionTest.cs
index 225525395b65ae9fc0166240c523df2ab4eec9a1..52d1d52d391d89f2080a0e0c75d8fdf582c07370 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/GetSectionTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/GetSectionTest.cs
@@ -52,7 +52,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void TestGetSection()
 		{
 			var entries = new List<Entry>();
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/LACDecisionFactorTest.cs b/VectoCore/VectoCoreTest/Models/Simulation/LACDecisionFactorTest.cs
index ae01ef3b4bfeae89026a5a471770166bdd697ba8..e7fdd14ffb450f66950c05f118c7a3e9e13e2683 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/LACDecisionFactorTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/LACDecisionFactorTest.cs
@@ -40,7 +40,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 	[Parallelizable(ParallelScope.All)]
 	public class LACDecisionFactorTest
 	{
-		[Test]
+		[TestCase]
 		public void LAC_DF_Test()
 		{
 			for (var vVehicle = 0.SI<MeterPerSecond>();
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs b/VectoCore/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs
index fb018a4d01d6e3788a99812f53c1bd1992d1dca6..fd782aaed4c0e9a95d953ad23803bd23b8e7caeb 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/LossMapRangeValidationTest.cs
@@ -75,7 +75,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-173
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void LossMapValid()
 		{
 			var gearboxData = CreateGearboxData(GearboxDirectLoss, GearboxIndirectLoss);
@@ -112,7 +112,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-173
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void LossMapInvalidAxle()
 		{
 			var gearboxData = CreateGearboxData(GearboxDirectLoss, GearboxIndirectLoss);
@@ -126,7 +126,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-173
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void LossMapLimited()
 		{
 			var gearboxData = CreateGearboxData(GearboxLimited, GearboxLimited);
@@ -140,7 +140,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-173
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void LossMapAxleLossMapMissing()
 		{
 			var gearboxData = CreateGearboxData(GearboxDirectLoss, GearboxIndirectLoss);
@@ -173,7 +173,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-173
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void LossMapGearLossMapMissing()
 		{
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile, 0);
@@ -225,7 +225,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-230
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void TestLossMapValuesWithEfficiency()
 		{
 			var lossMap = TransmissionLossMapReader.Create(0.95, 1.0, "Dummy");
@@ -258,7 +258,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-230
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void CreateJobWithLossMapEfficiency_Engineering()
 		{
 			var dataProvider = JSONInputDataFactory.ReadJsonJob(@"TestData\Jobs\12t Delivery Truck Engineering Efficiency.vecto");
@@ -270,7 +270,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-230
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void RunJobWithLossMapEfficiency_Engineering()
 		{
 			const string jobFileName = @"TestData\Jobs\12t Delivery Truck Engineering Efficiency.vecto";
@@ -291,7 +291,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-230
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void CreateJobWith_Axle_LossMapEfficiency_Declaration()
 		{
 			var dataProvider = JSONInputDataFactory.ReadJsonJob(@"TestData\Jobs\40t_Long_Haul_Truck with AxleEfficiency.vecto");
@@ -304,7 +304,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// <summary>
 		/// VECTO-230
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void CreateJobWith_Gear_LossMapEfficiency_Declaration()
 		{
 			var dataProvider = JSONInputDataFactory.ReadJsonJob(@"TestData\Jobs\40t_Long_Haul_Truck with GearEfficiency.vecto");
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/MeasuredSpeedModeTest.cs b/VectoCore/VectoCoreTest/Models/Simulation/MeasuredSpeedModeTest.cs
index a5cfa0bdf777c0cec4ff94cf34ecf79cc395f023..a04c2c93295a1901e62e51cb2e25ddba96dfdfad 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/MeasuredSpeedModeTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/MeasuredSpeedModeTest.cs
@@ -74,7 +74,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// Test if the cycle file can be read.
 		/// </summary>
 		/// <remarks>VECTO-181</remarks>
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_ReadCycle_Gear()
 		{
 			// all data
@@ -133,7 +133,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// Test if the cycle file can be read.
 		/// </summary>
 		/// <remarks>VECTO-181</remarks>
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_ReadCycle()
 		{
 			// all data
@@ -205,7 +205,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// Tests if the powertrain can be created in MeasuredSpeed mode.
 		/// </summary>
 		/// <remarks>VECTO-181</remarks>
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_CreatePowertrain_Gear()
 		{
 			// prepare input data
@@ -284,7 +284,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// Tests if the powertrain can be created in MeasuredSpeed mode.
 		/// </summary>
 		/// <remarks>VECTO-181</remarks>
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_CreatePowertrain()
 		{
 			// prepare input data
@@ -389,7 +389,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			ResultFileHelper.TestSumFile(expectedSumFile, actualSumFile);
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeed.vecto",
@@ -398,7 +398,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\Results\MeasuredSpeed.vsum", @"TestData\MeasuredSpeed\MeasuredSpeed.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeedAux_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedAux.vecto",
@@ -407,7 +407,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\Results\MeasuredSpeedAux.vsum", @"TestData\MeasuredSpeed\MeasuredSpeedAux.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeedVair_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedVair.vecto",
@@ -416,7 +416,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\Results\MeasuredSpeedVair.vsum", @"TestData\MeasuredSpeed\MeasuredSpeedVair.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeedVair_WindFromFront_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedVairFront.vecto",
@@ -425,7 +425,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\Results\MeasuredSpeedVairFront.vsum", @"TestData\MeasuredSpeed\MeasuredSpeedVairFront.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeedVair_WindFromBack_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedVairBack.vecto",
@@ -435,7 +435,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void MeasuredSpeedVair_NoWind_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedVairNoWind.vecto",
@@ -445,7 +445,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\MeasuredSpeedVairNoWind.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeedVairAux_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedVairAux.vecto",
@@ -454,7 +454,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\Results\MeasuredSpeedVairAux.vsum", @"TestData\MeasuredSpeed\MeasuredSpeedVairAux.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_Gear_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedGear.vecto",
@@ -463,7 +463,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\Results\MeasuredSpeedGear.vsum", @"TestData\MeasuredSpeed\MeasuredSpeedGear.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_Gear_TractionInterruption_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedGear_TractionInterruption.vecto",
@@ -473,7 +473,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\MeasuredSpeedGear_TractionInterruption.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_Gear_Aux_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedGearAux.vecto",
@@ -482,7 +482,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\Results\MeasuredSpeedGearAux.vsum", @"TestData\MeasuredSpeed\MeasuredSpeedGearAux.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_Gear_Vair_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedGearVair.vecto",
@@ -491,7 +491,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\Results\MeasuredSpeedGearVair.vsum", @"TestData\MeasuredSpeed\MeasuredSpeedGearVair.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_Gear_VairAux_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedGearVairAux.vecto",
@@ -501,7 +501,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\MeasuredSpeedGearVairAux.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_Gear_AT_PS_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedGearAT-PS.vecto",
@@ -511,7 +511,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\MeasuredSpeedGearAT-PS.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void MeasuredSpeed_Gear_AT_Ser_Run()
 		{
 			RunJob(@"TestData\MeasuredSpeed\MeasuredSpeedGearAT-Ser.vecto",
@@ -521,7 +521,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 				@"TestData\MeasuredSpeed\MeasuredSpeedGearAT-Ser.vsum");
 		}
 
-		[Test]
+		[TestCase]
 		public void VcdbTest()
 		{
 			var tbl = VectoCSVFile.Read(@"TestData/MeasuredSpeed/VairBetaFull.vcdb");
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/PTOIdleLossTest.cs b/VectoCore/VectoCoreTest/Models/Simulation/PTOIdleLossTest.cs
index 825e53d0ae6f8ebece585b076bb3179bf43dec98..07cde9019d7747468acef7a4f6ad81af641a59af 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/PTOIdleLossTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/PTOIdleLossTest.cs
@@ -44,7 +44,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 	[Parallelizable(ParallelScope.All)]
 	public class PTOIdleLossTest
 	{
-		[Test]
+		[TestCase]
 		public void PTOLossMapCaseSensitiveTest()
 		{
 			var data = new[] {
@@ -60,7 +60,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		}
 
 
-		[Test]
+		[TestCase]
 		public void PTOIdleLosses_FixPoints()
 		{
 			var entryList = new List<PTOLossMap.Entry>();
@@ -77,7 +77,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void PTOIdleLosses_Interpolate()
 		{
 			var entryList = new List<PTOLossMap.Entry>();
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/PwheelModeTests.cs b/VectoCore/VectoCoreTest/Models/Simulation/PwheelModeTests.cs
index f5659f5db765855ba94478fdb793bd9c5ba1225e..feb58293ab45e117d7f28e3db711b2c76f8762aa 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/PwheelModeTests.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/PwheelModeTests.cs
@@ -68,7 +68,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// Test if the cycle file can be read.
 		/// </summary>
 		/// <remarks>VECTO-177</remarks>
-		[Test]
+		[TestCase]
 		public void Pwheel_ReadCycle_Test()
 		{
 			var runData = new VectoRunData() {
@@ -128,7 +128,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// Tests if the powertrain can be created in P_wheel_in mode.
 		/// </summary>
 		/// <remarks>VECTO-177</remarks>
-		[Test]
+		[TestCase]
 		public void Pwheel_CreatePowertrain_Test()
 		{
 			// prepare input data
@@ -186,7 +186,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// Tests if the simulation works and the modfile and sumfile are correct in P_wheel_in mode.
 		/// </summary>
 		/// <remarks>VECTO-177</remarks>
-		[Test]
+		[TestCase]
 		public void Pwheel_Run_Test()
 		{
 			var jobFile = @"TestData\Pwheel\Pwheel.vecto";
@@ -215,7 +215,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		/// </summary>
 		/// <remarks>VECTO-177</remarks>
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void Pwheel_ultimate_Run_Test()
 		{
 			var jobFile = @"TestData\Pwheel\Pwheel_ultimate.vecto";
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/SimulationTests.cs b/VectoCore/VectoCoreTest/Models/Simulation/SimulationTests.cs
index b83367f7e245bd6e3a2da3a0c95c7eeb1229dbaf..32122b7005c4b72c6b040a2bb985a22b5c2b7a9e 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/SimulationTests.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/SimulationTests.cs
@@ -57,7 +57,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestSimulationEngineOnly()
 		{
 			var resultFileName = "TestEngineOnly-result.vmod";
@@ -68,7 +68,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			Assert.AreEqual(560.RPMtoRad(), container.EngineInfo.EngineSpeed);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestEngineOnly_JobRun()
 		{
 			var actual = @"TestData\Jobs\EngineOnlyJob_Coach Engine Only short.vmod";
@@ -82,7 +82,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			ResultFileHelper.TestModFile(expected, actual);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestEngineOnly_SimulatorRun()
 		{
 			var actual = @"TestData\Jobs\EngineOnlyJob_Coach Engine Only short.vmod";
@@ -115,7 +115,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 			return factory.SimulationRuns().First();
 		}
 
-		[Test]
+		[TestCase]
 		public void Test_VectoJob()
 		{
 			var jobFile = @"TestData\Jobs\24t Coach EngineOnly.vecto";
diff --git a/VectoCore/VectoCoreTest/Models/Simulation/VechicleContainerTests.cs b/VectoCore/VectoCoreTest/Models/Simulation/VechicleContainerTests.cs
index 47def01b58cceb7a424a14b630a23a78901ffec6..47971aecba39d44434773ebc107d6f87e4ca3ef6 100644
--- a/VectoCore/VectoCoreTest/Models/Simulation/VechicleContainerTests.cs
+++ b/VectoCore/VectoCoreTest/Models/Simulation/VechicleContainerTests.cs
@@ -43,7 +43,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
 	{
 		private const string EngineFile = @"TestData\Components\24t Coach.veng";
 
-		[Test]
+		[TestCase]
 		public void VechicleContainerHasEngine()
 		{
 			var vehicle = new VehicleContainer(ExecutionMode.Engineering);
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/ClutchTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/ClutchTest.cs
index 6a17fa00a854d0a252716708657d231dbfca1607..3425be82fd5865c6476e814eda75b6c5742cfc0c 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/ClutchTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/ClutchTest.cs
@@ -103,7 +103,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.AreEqual(expectedEngineSpeed, outPort.AngularVelocity.Value(), 0.001);
 		}
 
-		//[Test] // this test is just to make sure the clutch characteristic has no unsteadiness
+		//[TestCase] // this test is just to make sure the clutch characteristic has no unsteadiness
 		public void ClutchContinuityTest()
 		{
 			var container = new VehicleContainer(ExecutionMode.Engineering);
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs
index c21f4a4915892193280ad5262ec29ad259e10611..936f118c7886ce0de584304e000cd64f18af3a21 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/CombustionEngineTest.cs
@@ -69,7 +69,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestEngineHasOutPort()
 		{
 			var vehicle = new VehicleContainer(ExecutionMode.Engineering);
@@ -80,7 +80,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.IsNotNull(port);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestOutPortRequestNotFailing()
 		{
 			var vehicle = new VehicleContainer(ExecutionMode.Engineering);
@@ -99,7 +99,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			port.Request(absTime, dt, torque, engineSpeed, false);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestSimpleModalData()
 		{
 			var vehicle = new VehicleContainer(ExecutionMode.Engineering);
@@ -276,7 +276,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			modalData.Finish(VectoRun.Status.Success);
 		}
 
-		[Test]
+		[TestCase]
 		public void EngineIdleJump()
 		{
 			var container = new VehicleContainer(ExecutionMode.Engineering);
@@ -346,7 +346,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.AreEqual(680.RPMtoRad(), row[ModalResultField.n_ice_avg.GetName()]);
 		}
 
-		[Test]
+		[TestCase]
 		public void EngineIdleControllerTestCoach()
 		{
 			VehicleContainer(CoachEngine, out var container, out var engine, out var requestPort, out var gearbox);
@@ -397,7 +397,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 		| 70.5     | 308.729     | 1284.139  | 2295.815    | 9        |
 				*/
 
-		[Test]
+		[TestCase]
 		public void EngineIdleControllerTestTruck()
 		{
 			VehicleContainer(TruckEngine, out var container, out var engine, out var requestPort, out var gearbox);
@@ -447,7 +447,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			//dataWriter.Finish();
 		}
 
-		[Test]
+		[TestCase]
 		public void EngineIdleControllerTest2Truck()
 		{
 			VehicleContainer(TruckEngine, out var container, out var engine, out var requestPort, out var gearbox);
@@ -501,7 +501,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			//dataWriter.Finish();
 		}
 
-		[Test]
+		[TestCase]
 		public void Test_EngineData()
 		{
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(CoachEngine, 0);
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/DistanceBasedDrivingCycleTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/DistanceBasedDrivingCycleTest.cs
index 47362da5bbb7d08ac1549a588560401368aba065..f51d0443de5e366a56a4d82829090a901a8252fe 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/DistanceBasedDrivingCycleTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/DistanceBasedDrivingCycleTest.cs
@@ -65,7 +65,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestLimitRequst()
 		{
 			var data = new string[] {
@@ -162,7 +162,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.IsInstanceOf<ResponseSuccess>(response);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestDistanceRequest()
 		{
 			var cycleData = DrivingCycleDataReader.ReadFromFile(ShortCycle, CycleType.DistanceBased, false);
@@ -248,7 +248,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			absTime += response.SimulationInterval;
 		}
 
-		[Test]
+		[TestCase]
 		public void CycleStartsWithNoStopTime()
 		{
 			var data = new string[] {
@@ -268,7 +268,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.IsTrue(run.FinishedWithoutErrors, "Cycle start witout stoptime FAILED");
 		}
 
-		[Test]
+		[TestCase]
 		public void CycleWithZeroStopTime()
 		{
 			var data = new string[] {
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/DriverTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/DriverTest.cs
index 20bb2ad7c838933337556de4a4aa6ac1a35197a9..4cf4702964c30721f842134ba2bd0d20c80972e2 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/DriverTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/DriverTest.cs
@@ -73,7 +73,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 		}
 
 
-		[Test]
+		[TestCase]
 		public void DriverCoastingTest()
 		{
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile, 1);
@@ -142,7 +142,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			modData.Finish(VectoRun.Status.Success);
 		}
 
-		[Test]
+		[TestCase]
 		public void DriverCoastingTest2()
 		{
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFile, 1);
@@ -211,7 +211,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			modData.Finish(VectoRun.Status.Success);
 		}
 
-		[Test]
+		[TestCase]
 		public void DriverOverloadTest()
 		{
 			var engineData = MockSimulationDataFactory.CreateEngineDataFromFile(EngineFileHigh, 1);
@@ -280,7 +280,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.AreEqual(0.2900, modData.GetValues<SI>(ModalResultField.acc).Last().Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void DriverAccelerationTest()
 		{
 			var driverData = MockSimulationDataFactory.CreateDriverDataFromFile(JobFile);
@@ -358,7 +358,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.AreEqual(0.2, response.SimulationInterval.Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void DriverDecelerationTest()
 		{
 			var driverData = MockSimulationDataFactory.CreateDriverDataFromFile(JobFile);
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/GearboxPowertrainTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/GearboxPowertrainTest.cs
index eb0be2f63cfd8060365eca34e2f47d3d9c4277fa..4bd31644c5dd2d86ed5f81c46e265b4b61187860 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/GearboxPowertrainTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/GearboxPowertrainTest.cs
@@ -49,7 +49,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void Gearbox_Initialize_Empty()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(new[] {
@@ -81,7 +81,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			AssertHelper.AreRelativeEqual(65.6890, container.EngineInfo.EngineSpeed);
 		}
 
-		[Test]
+		[TestCase]
 		public void Gearbox_Initialize_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(new[] {
@@ -113,7 +113,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			AssertHelper.AreRelativeEqual(87.3192, container.EngineInfo.EngineSpeed);
 		}
 
-		[Test]
+		[TestCase]
 		public void Gearbox_Initialize_85_RefLoad()
 		{
 			var cycle = SimpleDrivingCycles.CreateCycleData(new[] {
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
index f17e06b5b960ded057b7d83b6c20bbc635c28452..b7c34f69cb5eebedd9ac93bcedc4536d19edeb25 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/GearboxTest.cs
@@ -147,7 +147,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 				"AngularVelocity Engine Side");
 		}
 
-		[Test]
+		[TestCase]
 		public void AxleGearValidRangeTest()
 		{
 			var vehicle = new VehicleContainer(ExecutionMode.Engineering);
@@ -156,7 +156,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.AreEqual(0, axleGear.Validate(ExecutionMode.Declaration, VectoSimulationJobType.ConventionalVehicle, null, null, false).Count);
 		}
 
-		[Test]
+		[TestCase]
 		public void AxleGearInvalidRangeTest()
 		{
 			var vehicle = new VehicleContainer(ExecutionMode.Engineering);
@@ -406,7 +406,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			gearbox.CommitSimulationStep(absTime, dt, modData);
 		}
 
-		[Test]
+		[TestCase]
 		public void Gearbox_IntersectFullLoadCurves()
 		{
 			var gearboxData = MockSimulationDataFactory.CreateGearboxDataFromFile(GearboxDataFile, EngineDataFile);
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/RetarderTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/RetarderTest.cs
index 15af58773efbc17c59b04f5b043c8181817d46c2..2d53b63ffb0a4b071bf58ec288e21bc4de2c6295 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/RetarderTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/RetarderTest.cs
@@ -87,7 +87,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			//Assert.AreEqual(112, nextRequest.Torque.Value(), Delta);
 		}
 
-		[Test]
+		[TestCase]
 		public void RetarderSubsequentRequestTest()
 		{
 			var vehicle = new VehicleContainer(ExecutionMode.Declaration);
@@ -143,7 +143,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 
 		}
 
-		[Test]
+		[TestCase]
 		public void RetarderDeclarationTest()
 		{
 			var retarderData = RetarderLossMapReader.ReadFromFile(RetarderLossMapFile);
@@ -160,7 +160,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 				"Retarder LossMap data was extrapolated in Declaration mode: range for loss map is not sufficient: n:5100 (min:0, max:2300), ratio:2");
 		}
 
-		[Test]
+		[TestCase]
 		public void RetarderDataSorting()
 		{
 			var retarderEntries = new[] {
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/VehicleTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/VehicleTest.cs
index f2a5b141995b56d23b7ba8b76353e267d834cc37..55ea5a53bdd9f6819199a48c7d3baf1e8c0697fc 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/VehicleTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/VehicleTest.cs
@@ -64,7 +64,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
         }
 
 
-        [Test]
+        [TestCase]
 		public void VehiclePortTest()
 		{
 			
@@ -141,7 +141,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 			Assert.AreEqual(expected, avgForce.Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void VehicleAirDragPowerLossDeclarationTest()
 		{
 			var container = new VehicleContainer(ExecutionMode.Declaration);
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponent/WheelsTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponent/WheelsTest.cs
index fc204080d78979e2d1362b951b21ccf2e8072349..ba5e7afbc6c08be437275e8370507747b1f46a1d 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponent/WheelsTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponent/WheelsTest.cs
@@ -45,7 +45,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
 	{
 		private const string VehicleDataFile = @"TestData\Components\24t Coach.vveh";
 
-		[Test]
+		[TestCase]
 		public void WheelsRequestTest()
 		{
 			var container = new VehicleContainer(ExecutionMode.Engineering);
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/AccelerationCurveTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/AccelerationCurveTest.cs
index f721948474395db07a2d1335f6953b10d30a724a..b159db1d866b905e2afd60c113dad2cf9f6f45c1 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/AccelerationCurveTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/AccelerationCurveTest.cs
@@ -57,7 +57,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(entry.Deceleration.Value(), deceleration, Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void AccelerationTest()
 		{
 			Data = AccelerationCurveReader.ReadFromFile(@"TestData\Components\Coach.vacc");
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/AuxiliaryTypeHelperTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/AuxiliaryTypeHelperTest.cs
index 7954618e845f4060dffe399004b750482fcd942b..c0f864df0c661c949e25fda557a56ce66fd47846 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/AuxiliaryTypeHelperTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/AuxiliaryTypeHelperTest.cs
@@ -40,7 +40,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 	[Parallelizable(ParallelScope.All)]
 	public class AuxiliaryTypeHelperTest
 	{
-		[Test]
+		[TestCase]
 		public void TestParseAuxiliaryType()
 		{
 			Assert.AreEqual(AuxiliaryType.Fan, AuxiliaryTypeHelper.Parse("Fan"));
@@ -50,7 +50,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(AuxiliaryType.PneumaticSystem, AuxiliaryTypeHelper.Parse("Pneumatic System"));
 		}
 
-		[Test]
+		[TestCase]
 		public void TestToString()
 		{
 			Assert.AreEqual(Constants.Auxiliaries.Names.Fan, AuxiliaryTypeHelper.ToString(AuxiliaryType.Fan));
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/DistanceCycleDataTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/DistanceCycleDataTest.cs
index c1462ee8d18ea40c0507ed0cd3e0bcdbdd0e1e27..497bf92dc6563c5e3eeec09fb483aabe51e3ad00 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/DistanceCycleDataTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/DistanceCycleDataTest.cs
@@ -48,7 +48,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		private const string ResourceNamespace = "TUGraz.VectoCore.Resources.Declaration.";
 
 
-		[Test]
+		[TestCase]
 		public void FilterRedundantEntries()
 		{
 			var data = new[] {
@@ -72,7 +72,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(9, cycleData.Entries[2].Distance.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void HandleStopTimes()
 		{
 			var data = new[] {
@@ -99,7 +99,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(5, cycleData.Entries[1].StoppingTime.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void StopTimeWhenVehicleSpeedIsNotZero()
 		{
 			var data = new[] {
@@ -111,7 +111,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			AssertHelper.Exception<VectoException>(() => SimpleDrivingCycles.CreateCycleData(data));
 		}
 
-		[Test]
+		[TestCase]
 		public void DistanceNotStrictlyIncreasing()
 		{
 			var data = new[] {
@@ -123,7 +123,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			AssertHelper.Exception<VectoException>(() => SimpleDrivingCycles.CreateCycleData(data));
 		}
 
-		[Test]
+		[TestCase]
 		public void CycleAltitudeTest()
 		{
 			var missionType = "LongHaul";
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/FuelConsumptionMapTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/FuelConsumptionMapTest.cs
index 85da6a212397d07f9f7b926427b9b84bf215691e..407d9b8ceea67e32feeefe3d2a3b45de6c765a6a 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/FuelConsumptionMapTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/FuelConsumptionMapTest.cs
@@ -47,7 +47,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 	{
 		private const double Tolerance = 0.0001;
 
-		[Test]
+		[TestCase]
 		public void TestFuelConsumption_FixedPoints()
 		{
 			var map = FuelConsumptionMapReader.ReadFromFile(@"TestData\Components\24t Coach.vmap");
@@ -55,7 +55,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			AssertMapValuesEqual(lines, map);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFuelConsumption_InterpolatedPoints()
 		{
 			var map = FuelConsumptionMapReader.ReadFromFile(@"TestData\Components\24t Coach.vmap");
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs
index 939b0b06c711faf6073bc767fc0bb56c241f8b89..9fb8536dcc3715b2a4a1ff9aed75c7e7be424e3f 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/FullLoadCurveTest.cs
@@ -62,7 +62,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Directory.SetCurrentDirectory(TestContext.CurrentContext.TestDirectory);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullLoadStaticTorque()
 		{
 			var fldCurve = FullLoadCurveReader.ReadFromFile(CoachEngineFLD);
@@ -72,14 +72,14 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(1231, fldCurve.FullLoadStationaryTorque(580.RPMtoRad()).Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullLoadEngineSpeedRated()
 		{
 			var fldCurve = FullLoadCurveReader.ReadFromFile(CoachEngineFLD);
 			Assert.AreEqual(181.8444, fldCurve.RatedSpeed.Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullLoadStaticPower()
 		{
 			var fldCurve = FullLoadCurveReader.ReadFromFile(CoachEngineFLD);
@@ -89,7 +89,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(74767.810760, fldCurve.FullLoadStationaryPower(580.RPMtoRad()).Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestDragLoadStaticTorque()
 		{
 			var fldCurve = FullLoadCurveReader.ReadFromFile(CoachEngineFLD);
@@ -101,7 +101,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(-339, fldCurve.DragLoadStationaryTorque(2200.RPMtoRad()).Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestDragLoadStaticPower()
 		{
 			var fldCurve = FullLoadCurveReader.ReadFromFile(CoachEngineFLD);
@@ -111,7 +111,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(-9019.51251, fldCurve.DragLoadStationaryPower(580.RPMtoRad()).Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestPT1()
 		{
 			var fldCurve = FullLoadCurveReader.ReadFromFile(CoachEngineFLD);
@@ -121,7 +121,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(0.37, fldCurve.PT1(1700.RPMtoRad()).Value.Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestPreferredSpeed()
 		{
 			var fldCurve = FullLoadCurveReader.ReadFromFile(CoachEngineFLD);
@@ -177,7 +177,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(990.9626, nTq99l.AsRPM, 1e-3);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestPreferredSpeed2()
 		{
 			var fldData = new[] {
@@ -202,7 +202,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			//AssertHelper.AreRelativeEqual(130.691151551712.SI<PerSecond>(), fldCurve.PreferredSpeed);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestN95hSpeedInvalid()
 		{
 			var fldData = new[] {
@@ -231,7 +231,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		///		[VECTO-679]
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void TestN95hComputation()
 		{
 			var fldData = new[] {
@@ -268,7 +268,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		///     [VECTO-78]
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void Test_FileRead_WrongFileFormat_InsufficientColumns()
 		{
 			AssertHelper.Exception<VectoException>(
@@ -279,7 +279,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		/// [VECTO-78]
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void Test_FileRead_HeaderColumnsNotNamedCorrectly()
 		{
 			LogList.Clear();
@@ -306,7 +306,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		///     [VECTO-78]
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void Test_FileRead_NoHeader()
 		{
 			var curve = FullLoadCurveReader.ReadFromFile(@"TestData\Components\FullLoadCurve no header.vfld");
@@ -317,7 +317,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		///     [VECTO-78]
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void Test_FileRead_InsufficientEntries()
 		{
 			AssertHelper.Exception<VectoException>(
@@ -325,7 +325,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 				"ERROR while reading FullLoadCurve File: FullLoadCurve must consist of at least two lines with numeric values (below file header)");
 		}
 
-		[Test]
+		[TestCase]
 		public void FullLoad_LossMap_Test()
 		{
 			var engineData = new CombustionEngineData {
@@ -357,7 +357,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		///     [VECTO-190]
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void TestSortingFullLoadEntries()
 		{
 			var fldEntries = new[] {
@@ -382,7 +382,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(1231, fldCurve.FullLoadStationaryTorque(580.RPMtoRad()).Value(), Tolerance);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestDuplicateEntries()
 		{
 			var fldData = new[] {
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/GearboxDataTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/GearboxDataTest.cs
index 416801c7e1755ae49e4028ef49f8ad203e29a6e3..89c9b129aaa6dbd8895abaecb995cf49eb6b3388 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/GearboxDataTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/GearboxDataTest.cs
@@ -59,7 +59,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestGearboxDataReadTest()
 		{
 			var axleData = MockSimulationDataFactory.CreateAxleGearDataFromFile(GearboxFile);
@@ -115,7 +115,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(gbxPowerLoss, loss.Value(), 0.1, testName);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestLossMap_IN_10_CONST_Interpolation_Extrapolation()
 		{
 			var data = new DataTable();
@@ -159,7 +159,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			AssertHelper.AreRelativeEqual(10, map.GetTorqueLoss(120.RPMtoRad(), 50.SI<NewtonMeter>()).Value);
 		}
 
-		//[Test]
+		//[TestCase]
 		//public void TestLossMap_OUT_10_CONST_Interpolation_Extrapolation()
 		//{
 		//	var data = new DataTable();
@@ -203,7 +203,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		//	AssertHelper.AreRelativeEqual(40, map.GetOutTorque(120.RPMtoRad(), 50.SI<NewtonMeter>(), true));
 		//}
 
-		[Test]
+		[TestCase]
 		public void TestLossMap_IN_Interpolation_Extrapolation()
 		{
 			var data = new DataTable();
@@ -247,7 +247,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			AssertHelper.AreRelativeEqual(25, map.GetTorqueLoss(120.RPMtoRad(), 50.SI<NewtonMeter>()).Value);
 		}
 
-		//[Test]
+		//[TestCase]
 		//public void TestLossMap_OUT_Interpolation_Extrapolation()
 		//{
 		//	var data = new DataTable();
@@ -294,7 +294,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		//	AssertHelper.Exception<VectoException>(() => { map.GetOutTorque(120.RPMtoRad(), 50.SI<NewtonMeter>()); });
 		//}
 
-		[Test]
+		[TestCase]
 		public void TestFullLoadCurveIntersection()
 		{
 			var engineFldString = new[] {
@@ -325,7 +325,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		///		VECTO-190
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void TestFullLoadSorting()
 		{
 			var gbxFldString = new[] {
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/TorqueConverterDataTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/TorqueConverterDataTest.cs
index c6a06f3773f64e8ea9db66627ca3ea2d7f086ed7..aa4f64a1b9839b9ed26418c3c49ff90d0d431d6e 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/TorqueConverterDataTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/TorqueConverterDataTest.cs
@@ -45,7 +45,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 	[Parallelizable(ParallelScope.All)]
 	public class TorqueConverterDataTest
 	{
-		[Test]
+		[TestCase]
 		public void TestTorqueConverterDataDeclarationMode()
 		{
 			var tqInput = new[] {
@@ -91,7 +91,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(5, tqData.TorqueConverterEntries.Last().SpeedRatio, 1e-9);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestTorqueConverterExtendPowersplit()
 		{
 			var tqInput = new[] {
@@ -139,7 +139,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(5 * ratio, tqData.TorqueConverterEntries.Last().SpeedRatio, 1e-9);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestTorqueConverterDataEngneeringMode_Append()
 		{
 			var tqInput = new[] {
@@ -178,7 +178,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(5, tqData.TorqueConverterEntries.Last().SpeedRatio, 1e-9);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestTorqueConverterDataEngineeringMode_Unmodified()
 		{
 			var tqInput = new[] {
@@ -318,7 +318,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.AreEqual(operatingPoint.OutAngularVelocity.Value(), reverseOP.OutAngularVelocity.Value(), 1e-6);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestTorqueConverterComparisonV2()
 		{
 			var tqLimit = 1600;
@@ -473,7 +473,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestTorqueConverterBehavior()
 		{
 			var tqLimit = 1600;
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
index 2f3c4610f1057f6c65d32a0ad1a33a401e282555..16602da9dbe35b5e12238133fd183d234bb87e5b 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
@@ -70,7 +70,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		/// VECTO-107 Check valid range of input parameters
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void Validation_CombustionEngineData()
 		{
 			var fuelConsumption = new DataTable();
@@ -112,7 +112,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.IsTrue(data.IsValid());
 		}
 
-		[Test]
+		[TestCase]
 		public void Validation_CombustionEngineData_Engineering()
 		{
 			var fuelConsumption = new TableData();
@@ -148,7 +148,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.IsTrue(engineData.IsValid());
 		}
 
-		[Test]
+		[TestCase]
 		public void Validation_CombustionEngineData_Declaration()
 		{
 			var fuelConsumption = new TableData();
@@ -195,7 +195,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.IsTrue(engineData.IsValid());
 		}
 
-		[Test]
+		[TestCase]
 		public void ValidationModeVehicleDataTest()
 		{
 			var vehicleData = new VehicleData {
@@ -234,7 +234,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		/// VECTO-107 Check valid range of input parameters
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void ValidationModeVectoRunDataTest()
 		{
 			var container = new VehicleContainer(ExecutionMode.Engineering);
@@ -312,7 +312,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		/// VECTO-107 Check valid range of input parameters
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void Validation_VectoRun()
 		{
 			var container = new VehicleContainer(ExecutionMode.Engineering);
@@ -353,7 +353,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		/// VECTO-107 Check valid range of input parameters
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void Validation_Test()
 		{
 			var results = new DataObject().Validate(ExecutionMode.Declaration, VectoSimulationJobType.ConventionalVehicle, null, null, false);
@@ -364,7 +364,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 				"Validation Error: " + string.Join("\n_eng_avg", results.Select(r => r.ErrorMessage)));
 		}
 
-		[Test]
+		[TestCase]
 		public void ValidateDictionaryTest()
 		{
 			var container = new ContainerObject() {
@@ -381,7 +381,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 		/// <summary>
 		/// VECTO-249: check upshift is above downshift
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void ShiftPolygonValidationTest()
 		{
 			var vgbs = new[] {
@@ -410,7 +410,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			Assert.IsTrue(results.Any());
 		}
 
-		[Test]
+		[TestCase]
 		public void ShiftPolygonValidationATTest()
 		{
 			var vgbs = new[] {
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/VehicleDataTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/VehicleDataTest.cs
index 3489f4af760ec53448ff4c1adce79258713136a2..f64062636195593244df4a00717ccda9190ae35c 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/VehicleDataTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/VehicleDataTest.cs
@@ -39,7 +39,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 	{
 		private const string VehicleDataFile = @"TestData\Components\24t Coach.vveh";
 
-		[Test]
+		[TestCase]
 		public void ReadVehicleFileTest()
 		{
 			//IDataFileReader reader = new EngineeringModeSimulationDataReader();
diff --git a/VectoCore/VectoCoreTest/Models/WHRMapReaderTest.cs b/VectoCore/VectoCoreTest/Models/WHRMapReaderTest.cs
index 6d9d7dc5a024fd463e37edf16680d0c508b4fa45..7ae71a1a3a18e9b37df634c6f65f10ed3c40428e 100644
--- a/VectoCore/VectoCoreTest/Models/WHRMapReaderTest.cs
+++ b/VectoCore/VectoCoreTest/Models/WHRMapReaderTest.cs
@@ -38,7 +38,7 @@ namespace TUGraz.VectoCore.Tests.Models
 			xmlInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestWHRMapCSVDataElectric()
 		{
 
@@ -55,7 +55,7 @@ namespace TUGraz.VectoCore.Tests.Models
 			Assert.AreEqual(400, result.GeneratedPower.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void TestWHRMapCSVDataMechanical()
 		{
 
@@ -73,7 +73,7 @@ namespace TUGraz.VectoCore.Tests.Models
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestWHRMapCSVDataElectricAndMechanical()
 		{
 
diff --git a/VectoCore/VectoCoreTest/Reports/ActualModalSimulationDataTest.cs b/VectoCore/VectoCoreTest/Reports/ActualModalSimulationDataTest.cs
index 5b6bd32989afca54441b1f008b06380735226dff..8b51ad218a018bcaf30a6aa06199e7871800cbce 100644
--- a/VectoCore/VectoCoreTest/Reports/ActualModalSimulationDataTest.cs
+++ b/VectoCore/VectoCoreTest/Reports/ActualModalSimulationDataTest.cs
@@ -50,7 +50,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestWriteActualModData()
 		{
 			const string jobFile = @"TestData\Integration\DeclarationMode\40t Truck\40t_Long_Haul_Truck.vecto";
diff --git a/VectoCore/VectoCoreTest/Reports/ModDataPostprocessingTest.cs b/VectoCore/VectoCoreTest/Reports/ModDataPostprocessingTest.cs
index d3f248c9c383e4c19f6de666f8ddcb7bdf3eb3f5..c0331eab1a7aba44d01841baf940925d46c274eb 100644
--- a/VectoCore/VectoCoreTest/Reports/ModDataPostprocessingTest.cs
+++ b/VectoCore/VectoCoreTest/Reports/ModDataPostprocessingTest.cs
@@ -2318,7 +2318,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 
 		}
 
-		[Test]
+		[TestCase]
 		public void TestWHRMech_ModDataCorrection()
 		{
 			var runData = GetRunData();
diff --git a/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs b/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs
index c287c16ba1b2ad12dfd9ab0a818662fb76c4f351..c752058c0926c3108460a2f9a4fd13b4650647d1 100644
--- a/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs
+++ b/VectoCore/VectoCoreTest/Reports/SumWriterTest.cs
@@ -73,7 +73,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 			xmlInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestSumCalcFixedTime()
 		{
 			var writer = new FileOutputWriter("testsumcalc_fixed");
@@ -150,7 +150,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 			Assert.AreEqual((500.0 * 1e-4) * 1000 * 1000 / 500, sumData.Rows[0].ParseDouble("FC-Map [g/km]"), 1e-3);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestSumCalcVariableTime()
 		{
 			var writer = new FileOutputWriter("testsumcalc_var");
@@ -221,7 +221,7 @@ namespace TUGraz.VectoCore.Tests.Reports
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestSumDataMetaInformation()
 		{
 			var jobfile = @"Testdata\XML\XMLReaderDeclaration\vecto_vehicle-sample.xml";
diff --git a/VectoCore/VectoCoreTest/Utils/DoubleExtensionMethodTest.cs b/VectoCore/VectoCoreTest/Utils/DoubleExtensionMethodTest.cs
index 2b47097dee2ab9793f610036ad94bc5cc02db38e..b61d2514411bcfdf33a50ed8dd3a26fc8329f450 100644
--- a/VectoCore/VectoCoreTest/Utils/DoubleExtensionMethodTest.cs
+++ b/VectoCore/VectoCoreTest/Utils/DoubleExtensionMethodTest.cs
@@ -39,7 +39,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 	[Parallelizable(ParallelScope.All)]
 	public class DoubleExtensionMethodTest
 	{
-		[Test]
+		[TestCase]
 		public void DoubleExtensions_SI()
 		{
 			var val = 600.RPMtoRad();
@@ -58,7 +58,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 		    Assert.AreEqual(600.SI(Unit.SI.Rounds.Per.Minute).Cast<PerSecond>().Value(), val2.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void DoubleExtension_ComparisonOperators()
 		{
 			Assert.IsTrue(0.0.IsEqual(0.0));
@@ -105,7 +105,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 			Assert.IsTrue(0.998.IsSmallerOrEqual(1.0));
 		}
 
-		[Test]
+		[TestCase]
 		public void TestStringFormatting()
 		{
 			Assert.AreEqual("0.452", 0.452345.ToMinSignificantDigits(3, 1));
diff --git a/VectoCore/VectoCoreTest/Utils/SITest.cs b/VectoCore/VectoCoreTest/Utils/SITest.cs
index 66bb5d3d56ec33a5fe6eeb00d5e8aa54ae019cc1..32b10d77b0eb6ff06e5759ddea614c6f8c84d9eb 100644
--- a/VectoCore/VectoCoreTest/Utils/SITest.cs
+++ b/VectoCore/VectoCoreTest/Utils/SITest.cs
@@ -41,7 +41,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 	[Parallelizable(ParallelScope.All)]
 	public class SITest
 	{
-		[Test]
+		[TestCase]
 		[SuppressMessage("ReSharper", "UnusedVariable")]
 		public void SI_TypicalUsageTest()
 		{
@@ -104,7 +104,7 @@ namespace TUGraz.VectoCore.Tests.Utils
             var res2 = 40.SI(Unit.SI.Newton).Cast<Newton>();
 		}
 
-		[Test]
+		[TestCase]
 		public void SI_Test()
 		{
 			var si = 0.SI();
@@ -144,7 +144,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 			Assert.AreEqual(45.0 / 180.0 * Math.PI, VectoMath.InclinationToAngle(1).Value(), 0.000001);
 		}
 
-		[Test]
+		[TestCase]
 		[SuppressMessage("ReSharper", "UnusedVariable")]
 		public void SI_Comparison_Operators()
 		{
@@ -205,7 +205,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 			Assert.AreEqual(1, 2.SI().CompareTo(1.SI()));
 		}
 
-		[Test]
+		[TestCase]
 		[SuppressMessage("ReSharper", "UnusedVariable")]
 		public void SI_Test_Addition_Subtraction()
 		{
@@ -232,7 +232,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 				"Operator '-' can only operate on SI Objects with the same unit. Got: 1.0000 [s] - 1.0000 [m]");
 		}
 
-		[Test]
+		[TestCase]
 		public void SI_SpecialUnits()
 		{
 			Scalar scalar = 3.SI<Scalar>();
@@ -291,7 +291,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 		/// <summary>
 		/// VECTO-111
 		/// </summary>
-		[Test]
+		[TestCase]
 		public void SI_ReziprokDivision()
 		{
 			var test = 2.0.SI<Second>();
@@ -302,7 +302,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 			AssertHelper.AreRelativeEqual(expected, actual);
 		}
 
-		[Test]
+		[TestCase]
 		public void SI_Multiplication_Division()
 		{
 			AssertHelper.AreRelativeEqual(12.SI(), 3.SI() * 4.SI());
@@ -340,14 +340,14 @@ namespace TUGraz.VectoCore.Tests.Utils
 			AssertHelper.AreRelativeEqual(2.SI<NormLiterPerSecond>(), 2.SI<NormLiterPerSecond>() * 1);
 		}
 
-		[Test]
+		[TestCase]
 		public void SI_MeterPerSecond_Div_Meter()
 		{
 			PerSecond actual = 6.SI<MeterPerSecond>() / 2.SI<Meter>();
             AssertHelper.AreRelativeEqual(3.SI(Unit.SI.Per.Second), actual);
 		}
 
-		[Test]
+		[TestCase]
 		public void SI_SimplifyUnits()
 		{
             AssertHelper.AreRelativeEqual(3.SI(), 18.SI(Unit.SI.Kilo.Gramm) / 6.SI(Unit.SI.Kilo.Gramm));
@@ -370,14 +370,14 @@ namespace TUGraz.VectoCore.Tests.Utils
             // AssertHelper.AreRelativeEqual(3.SI(Unit.SI.Meter.Per.Second), 3.SI<Newton>(Unit.SI.Second.Per.Kilo.Gramm));
 		}
 
-		[Test]
+		[TestCase]
 		public void SI_Math()
 		{
 			AssertHelper.AreRelativeEqual(-3, -3.SI().Value());
 			AssertHelper.AreRelativeEqual(3.SI(), (-3).SI().Abs());
 		}
 
-		[Test]
+		[TestCase]
 		[SuppressMessage("ReSharper", "ReturnValueOfPureMethodIsNotUsed")]
 		public void SI_Equality()
 		{
@@ -415,7 +415,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 			4.SI<NewtonMeter>().GetHashCode();
 		}
 
-		[Test]
+		[TestCase]
 		public void SI_Output()
 		{
 			Assert.AreEqual("3.0000", 3.SI().ToOutputFormat());
@@ -433,7 +433,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 			Assert.AreEqual("0.5000 [m/s^2]", 0.5.SI<MeterPerSquareSecond>().ToOutputFormat(showUnit: true));
 		}
 		
-		[Test]
+		[TestCase]
         public void SI_Hash()
         {
             3.SI().GetHashCode();
@@ -441,7 +441,7 @@ namespace TUGraz.VectoCore.Tests.Utils
             4.SI<NewtonMeter>().GetHashCode();
         }
 
-        [Test]
+        [TestCase]
         public void SI_ConstructorPerformance()
         {
             for (var i = 0; i < 5e5; i++)
@@ -461,7 +461,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 
         }
 
-        [Test]
+        [TestCase]
         public void SI_CheckForEqualUnitPerformance()
         {
 
@@ -483,7 +483,7 @@ namespace TUGraz.VectoCore.Tests.Utils
         }
 
 
-        [Test]
+        [TestCase]
         public void SI_NeutralArithmeticPerformance()
         {
 
@@ -505,7 +505,7 @@ namespace TUGraz.VectoCore.Tests.Utils
             }
         }
 
-        [Test]
+        [TestCase]
         public void SI_SpecialArithmeticPerformance()
         {
 
@@ -527,7 +527,7 @@ namespace TUGraz.VectoCore.Tests.Utils
             }
         }
 
-        [Test]
+        [TestCase]
         public void SI_NewTests()
         {
             UnitInstance sikg = Unit.SI.Kilo.Gramm;
@@ -573,7 +573,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 			Assert.AreEqual("m^3", 2.13093.SI(Unit.SI.Liter).UnitString);
 		}
 
-		//[Test]
+		//[TestCase]
   //      public void SI_ConvertValues()
   //      {
   //          var sig1 = 5.SI(Unit.SI.Gramm);
diff --git a/VectoCore/VectoCoreTest/Utils/VectoMathTest.cs b/VectoCore/VectoCoreTest/Utils/VectoMathTest.cs
index 80b892d1b7d9a8fdfbd21f2add90ff8a26b76a5a..2d7f9c6d95b31809e94156acf6b966d23889ec42 100644
--- a/VectoCore/VectoCoreTest/Utils/VectoMathTest.cs
+++ b/VectoCore/VectoCoreTest/Utils/VectoMathTest.cs
@@ -41,7 +41,7 @@ namespace TUGraz.VectoCore.Tests.Utils
 	[Parallelizable(ParallelScope.All)]
 	public class VectoMathTest
 	{
-		[Test]
+		[TestCase]
 		public void VectoMath_Min()
 		{
 			var smaller = 0.SI();
diff --git a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputTest.cs b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputTest.cs
index f2a333c485478818034b85b0dba59e6affe3d496..f333143bc0587336835d882229873095f6e40667 100644
--- a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputTest.cs
@@ -80,7 +80,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			xmlInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputDecl()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -153,7 +153,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		
-		[Test]
+		[TestCase]
 		public void TestXMLInputGbx()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -179,7 +179,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxlG()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -203,7 +203,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputRetarder()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -225,7 +225,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheels()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -248,7 +248,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("e12*0815/8051*2017/05E0000*00", tyre.CertificationNumber);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheelsDuplicates()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -283,7 +283,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheelsAxleNumTooLow()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -317,7 +317,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheelsAxleNumTooHigh()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -352,7 +352,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAuxiliaries()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -372,7 +372,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestVehicleInput()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -391,7 +391,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(1.0, inputDataProvider.JobInputData.Vehicle.Components.RetarderInputData.Ratio);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestVehicleInputNoAirdrag()
 		{
 			var reader = XmlReader.Create(SampleVehicleDeclNoAirdrag);
@@ -402,7 +402,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestXMLPowertrainGeneration()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -421,7 +421,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(10, jobContainer.Runs.Count);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMEngineering_TorqueConverter()
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
@@ -436,7 +436,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("0.90", tcDataProvider.TCData.Rows[2][1]);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMLDeclaration_AngleDrive()
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
@@ -455,7 +455,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestVehicleInputData()
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
@@ -473,7 +473,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(1.0, inputDataProvider.JobInputData.Vehicle.Components.RetarderInputData.Ratio);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMLDeclaration_TorqueLimits()
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
@@ -488,7 +488,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(12, torqueLimits[2].Gear);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMLDeclaration_GbxTorqueLimits()
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
@@ -503,7 +503,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.IsNull(gears[11].MaxTorque);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMLDeclaration_GbxSpeedLimits()
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
@@ -518,7 +518,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.IsNull(gears[11].MaxInputSpeed);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestElementNotAvailable()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -545,7 +545,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestRetarderTypeNone()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -580,7 +580,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			jobContainer.Execute();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestRetarderTypes()
 		{
 			var retarderTypes = GetEnumOptions("RetarderTypeType", "1.0");
@@ -610,7 +610,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void TestAxleConfigurationTypes()
 		{
 			var axleConfigurations = GetEnumOptions("VehicleAxleConfigurationDeclarationType", "1.0");
@@ -638,7 +638,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void TestVehicleCategoryTypes()
 		{
 			var vehicleCategories = GetEnumOptions("VehicleCategoryDeclarationType", "1.0");
@@ -673,7 +673,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestWheelsTypes()
 		{
 			var wheelDimensions = GetEnumOptions("TyreDimensionType", "1.0");
@@ -708,7 +708,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void TestPTOTypeTypes()
 		{
 			var ptoGearWheels = GetEnumOptions("PTOShaftsGearWheelsType", "1.0");
@@ -772,7 +772,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void TestAngledriveTypes()
 		{
 			var angledriveTypes = GetEnumOptions("AngledriveTypeType", "1.0");
@@ -802,7 +802,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void TestGearboxTypes()
 		{
 			var gearboxTypes = GetEnumOptions("GearboxTransmissionTypeType", "1.0");
@@ -837,7 +837,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			}
 		}
 
-		[Test]
+		[TestCase]
 		public void TestPTOInputNone()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
@@ -848,7 +848,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("None", ptoDataProvider.PTOTransmissionType);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestPTOInput()
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
@@ -861,7 +861,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(1000, lookup.PowerDemand.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void TestCertificationMethodInput()
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDeclCertificationOptions);
@@ -878,33 +878,33 @@ namespace TUGraz.VectoCore.Tests.XML
 				inputDataProvider.JobInputData.Vehicle.Components.AirdragInputData.CertificationMethod);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestAuxFanTechTypes()
 		{
 			TestAuxTech(AuxiliaryType.Fan, GetEnumOptions("AuxFanTechnologyType", "1.0"), DeclarationData.Fan);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestAuxElectricSystemTechTypes()
 		{
 			TestAuxTech(AuxiliaryType.ElectricSystem, GetEnumOptions("AuxESTechnologyType", "1.0"),
 				DeclarationData.ElectricSystem);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestAuxSteeringPumpTechTypes()
 		{
 			TestAuxTech(AuxiliaryType.SteeringPump, GetEnumOptions("AuxSPTechnologyType", "1.0"), DeclarationData.SteeringPump);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestAuxPneumaticSystemTechTypes()
 		{
 			TestAuxTech(AuxiliaryType.PneumaticSystem, GetEnumOptions("AuxPSTechnologyType", "1.0"),
 				DeclarationData.PneumaticSystem);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestAuxHVACTechTypes()
 		{
 			TestAuxTech(AuxiliaryType.HVAC, GetEnumOptions("AuxHVACTechnologyType", "1.0"),
diff --git a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputRefTest.cs b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputRefTest.cs
index b5c11b8abc7d3d235a917b2dca5701401378ebba..be59f9b996d8e63c5a18d3481303ea8ab22a00fa 100644
--- a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputRefTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputRefTest.cs
@@ -65,7 +65,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			xmlInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputEngineeringReferencedFileAsStream()
 		{
 			AssertHelper.Exception<VectoException>(() => {
@@ -74,7 +74,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputEngReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -110,7 +110,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var fldMap = FullLoadCurveReader.Create(fldTable, true);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputGbxReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -140,7 +140,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			//var fldMap = FullLoadCurveReader.Create(gears.First().FullLoadCurve, true);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputGbxTCReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -158,7 +158,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("0.9", tcInputDataProvider.TCData.Rows[2][2]);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAngledriveReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -175,7 +175,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var lossMap = TransmissionLossMapReader.Create(lossMapData, angledriveInputData.Ratio, "Angledrive");
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxlGReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -192,7 +192,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var lossMap = TransmissionLossMapReader.Create(lossMapData, axlegearDataProvider.Ratio, "AxleGear");
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputRetarderReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -210,7 +210,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var lossMap = RetarderLossMapReader.Create(lossMapData);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheelsReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -232,7 +232,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(0.488822, vehicleDataProvider.DynamicTyreRadius.Value(), 1e-6);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAuxiliariesReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -253,7 +253,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			//Assert.AreEqual(3190, aux2.DemandMap.Rows[113].ParseDouble(AuxiliaryDataReader.Fields.SupplyPower));
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputADASReferencedFile()
 		{
 			//var reader = XmlReader.Create(EngineeringSampleFile);
@@ -265,7 +265,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.IsTrue(adas.OverSpeedData.Enabled);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestVehicleInputReferencedFile()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -285,7 +285,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(1.0, inputDataProvider.JobInputData.Vehicle.Components.RetarderInputData.Ratio);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLPowertrainGenerationReferencedFile()
 		{
 			var fileWriter = new FileOutputWriter("foo");
@@ -303,7 +303,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMEngineering_DriverModelLACExt()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
@@ -317,7 +317,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("lac_velocityDrop.csv", Path.GetFileName(lac.CoastingDecisionFactorVelocityDropLookup.Source));
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMEngineering_PTO()
 		{
 			var inputDataProvider = xmlInputReader.CreateEngineering(EngineeringSampleFile);
diff --git a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
index 2dea4bf04a55f9e1a9818b880ebf681186147a23..08500daf4005c7b8bfcebb7f0118aac566121a1e 100644
--- a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
@@ -77,7 +77,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			XMLInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputEngSingleFile()
 		{
 			var reader = File.OpenRead(EngineeringSampleFile);
@@ -115,7 +115,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var fldMap = FullLoadCurveReader.Create(fldTable, true);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputGbxSingleFile()
 		{
 			var reader = File.OpenRead(EngineeringSampleFile);
@@ -144,7 +144,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxlGSingleFile()
 		{
 			var reader = File.OpenRead(EngineeringSampleFile);
@@ -163,7 +163,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var lossMap = TransmissionLossMapReader.Create(lossMapData, axlegearDataProvider.Ratio, "AxleGear");
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxlGSingleFileEfficiency()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFile);
@@ -193,7 +193,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(0.9123, axleGear.Efficiency);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputRetarderSingleFile()
 		{
 			var reader = File.OpenRead(EngineeringSampleFile);
@@ -213,7 +213,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var lossMap = RetarderLossMapReader.Create(lossMapData);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheelsSingleFile()
 		{
 			var reader = File.OpenRead(EngineeringSampleFile);
@@ -237,7 +237,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(0.488822, vehicleDataProvider.DynamicTyreRadius.Value(), 1e-6);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheelsDuplicates()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFile);
@@ -271,7 +271,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			AssertHelper.Exception<VectoException>(() => { var axles = vehicleDataProvider.Components.AxleWheels.AxlesEngineering; });
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheelsAxleNumTooLow()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFile);
@@ -304,7 +304,7 @@ namespace TUGraz.VectoCore.Tests.XML
 				});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAxleWheelsAxleNumTooHigh()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFile);
@@ -338,7 +338,7 @@ namespace TUGraz.VectoCore.Tests.XML
 				});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAuxiliariesSingleFile()
 		{
 			var reader = File.OpenRead(EngineeringSampleFile);
@@ -359,7 +359,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			//Assert.AreEqual("FAN", aux2.ID);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputADASSingleFile()
 		{
 			var reader = File.OpenRead(EngineeringSampleFile);
@@ -371,7 +371,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.IsTrue(adas.OverSpeedData.Enabled);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestVehicleInputSingleFile()
 		{
 			var inputDataProvider = XMLInputReader.CreateEngineering(EngineeringSampleFile);
@@ -391,7 +391,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(1.0, inputDataProvider.JobInputData.Vehicle.Components.RetarderInputData.Ratio);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMEngineering_DriverModel()
 		{
 			var reader = File.OpenRead(EngineeringSampleFile);
@@ -445,7 +445,7 @@ namespace TUGraz.VectoCore.Tests.XML
 				tcShiftStrategy.CLUpshiftMinAcceleration);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMEngineering_DriverModelNoAcc()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFile);
@@ -477,7 +477,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMLPowertrainGenerationSingleFile()
 		{
 			var fileWriter = new FileOutputWriter("foo");
@@ -494,7 +494,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			//Assert.AreEqual(6, jobContainer.Runs.Count);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMEngineering_TorqueConverter()
 		{
 			var reader = File.OpenRead(EngineeringSampleFileFull);
@@ -517,7 +517,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(1700, tcDataProvider.MaxInputSpeed.AsRPM, 1e-6);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMEngineering_AngleDrive()
 		{
 			var reader = File.OpenRead(EngineeringSampleFileFull);
@@ -532,7 +532,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("100.00", angledriveDataProvider.LossMap.Rows[4][2]);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMEngineering_DriverModel()
 		{
 			var reader = File.OpenRead(EngineeringSampleFileFull);
@@ -584,7 +584,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(0.133, tcShiftStrategy.CLUpshiftMinAcceleration.Value(), 1e-6);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMEngineering_CrosswindCorrection()
 		{
 			var reader = File.OpenRead(EngineeringSampleFileFull);
@@ -598,7 +598,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("1.8", airdragData.CrosswindCorrectionMap.Rows[1][1]);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestFullFeaturedXMEngineering_PTO()
 		{
 			var reader = File.OpenRead(EngineeringSampleFileFull);
@@ -619,7 +619,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAngledriveGSingleFile()
 		{
 			var reader = File.OpenRead(EngineeringSampleFileFull);
@@ -638,7 +638,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var lossMap = TransmissionLossMapReader.Create(lossMapData, angledriveInputData.Ratio, "Angledrive");
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputAngledriveSingleFileEfficiency()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFileFull);
@@ -669,7 +669,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(0.9124, angledrive.Efficiency);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputConstantAuxSingleFile()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFileFull);
@@ -705,7 +705,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			//Assert.AreEqual(5000, auxInput[0].ConstantPowerDemand.Value(), 1e-6);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestRetarderTypeNone()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFile);
@@ -757,7 +757,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			jobContainer.Execute();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputInvalidXML()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFileFull);
@@ -782,7 +782,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputInvalidCycle()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFileFull);
@@ -814,7 +814,7 @@ namespace TUGraz.VectoCore.Tests.XML
 				});
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputInvalidDriverAcceleration()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFileFull);
@@ -845,7 +845,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.IsNull(accelerationCurve.AccelerationCurve);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputExtResourceMissingTag()
 		{
 			var reader = XmlReader.Create(EngineeringSampleFileFull);
@@ -878,7 +878,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputEngineeringVersion1_0()
 		{
 			var inputDataProvider = XMLInputReader.CreateEngineering(EngineeringSampleFile_10_Full);
@@ -891,7 +891,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputEngineeringVersion1_0_DriverModelParameters()
 		{
 			var inputDataProvider = XMLInputReader.CreateEngineering(EngineeringSampleFile_10_Full);
@@ -918,7 +918,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputEngineeringVersion1_0TestExtensions()
 		{
 			// load overrides of test xml types
diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs
index 243d5d69038e1a5ab373b1e6ba148091ce97826f..0cdd7a33f1155fa7a83314171b360477ce843c7b 100644
--- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusConsolidatedInputDataTest.cs
@@ -39,7 +39,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestConsolidateMultistageVehicle()
 		{
 			var reader = XmlReader.Create(_consolidatedInputData);
@@ -106,7 +106,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestPrimaryOnlyConsolidateMultistageVehicle()
 		{ 
 			var reader = XmlReader.Create(_primaryOnlyInputData);
@@ -117,7 +117,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(false, inputDataProvider.JobInputData.InputComplete);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestOneStageConsolidateMultistageVehicle()
 		{
 			var reader = XmlReader.Create(_oneStageInputData);
@@ -156,7 +156,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 		}
 
-		[Test]
+		[TestCase]
 		public void TestTwoStagesConsolidateMultistageVehicle()
 		{
 			var reader = XmlReader.Create(_twoStagesInputData);
@@ -197,7 +197,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestConsolidateMultistageAirdrag()
 		{
 			var reader = XmlReader.Create(_consolidatedInputDataAirdrag);
@@ -216,7 +216,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestConsolidateMultistageHeatPump()
 		{
 			var reader = XmlReader.Create(_consolidatedInputDataHeatPump);
@@ -233,7 +233,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
 		}
 		
-		[Test]
+		[TestCase]
 		public void TestConsolidateMultistageHeatHev()
 		{
 			var reader = XmlReader.Create(_consolidatedInputDataHeatHev);
@@ -250,7 +250,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(true, inputDataProvider.JobInputData.InputComplete);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestConsolidateMultistageHeatNgTankSystem()
 		{
 			var reader = XmlReader.Create(_consolidatedInputDataHeatNgTank);
diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
index 0e128affc31416bcf54677fc248cb93afb192950..6eb57e694e83f1c7c5d3ce9cb74f63a9309e49a0 100644
--- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusDataTest.cs
@@ -38,7 +38,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestVehicleMultistageBusInput01()
 		{
 			var reader = XmlReader.Create(VIF01);
@@ -666,7 +666,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		#endregion
 		
 
-		[Test]
+		[TestCase]
 		public void TestVehicleMultistageBusInput02()
 		{
 			var reader = XmlReader.Create(VIF02);
diff --git a/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputDataTest.cs
index f8f55a52a131e1b876836835219c2a1cb0b0dafd..f8ffca2207b8fda49f5ea9a2cf48564252dfa78d 100644
--- a/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputDataTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLMultistageBusInputDataTest.cs
@@ -44,7 +44,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			xmlInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestVehicleInterimStageInput()
 		{
 			var reader = XmlReader.Create(VehicleInterimStageInput);
@@ -141,7 +141,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 
-		[Test]
+		[TestCase]
 		public void TestVehicleExemptedInterimStageInput()
 		{
 			var reader = XmlReader.Create(VehicleExemptedInterimStageInput);
@@ -167,7 +167,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(2.5, vehicle.Height.Value());
 		}
 
-		[Test]
+		[TestCase]
 		public void TestVehicleExemptedMandatoryInput()
 		{
 			var reader = XmlReader.Create(VehicleExemptedMandatoryOnly);
@@ -193,7 +193,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(null, vehicle.Components);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestNullableComponentEntriesInput()
 		{
 			var reader = XmlReader.Create(VehicleComponentsEntriesNullable);
@@ -229,7 +229,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(null , vehicle.Components);
 		}
 		
-		[Test]
+		[TestCase]
 		public void TestStandardValueAirdragComponent()
 		{
 			var reader = XmlReader.Create(VehicleAirdragStandardValue);
diff --git a/VectoCore/VectoCoreTest/XML/XMLPrimaryBusInputDataTest.cs b/VectoCore/VectoCoreTest/XML/XMLPrimaryBusInputDataTest.cs
index 966cb0e3d9c761895afae59614a40a980f0508bd..7a4538a9887cbf8bd4b0b9139236adc33948138e 100644
--- a/VectoCore/VectoCoreTest/XML/XMLPrimaryBusInputDataTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLPrimaryBusInputDataTest.cs
@@ -26,7 +26,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			xmlInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestXMLInputDeclPrimaryBus()
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
diff --git a/VectoCore/VectoCoreTest/XML/XMLWritingTest.cs b/VectoCore/VectoCoreTest/XML/XMLWritingTest.cs
index 150473e07bf938e6c19e6e2b2d95e9c9607faa14..44e26ea93718324461a98dd1abccbb16caf2970b 100644
--- a/VectoCore/VectoCoreTest/XML/XMLWritingTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLWritingTest.cs
@@ -69,7 +69,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			xmlInputReader = _kernel.Get<IXMLInputDataReader>();
 		}
 
-		[Test]
+		[TestCase]
 		public void TestWriteEngineOnlySingleFile()
 		{
 			var outFile = "EngineOnlyJobSingleFile.xml";
@@ -90,7 +90,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestWriteEngineeringSingleFile()
 		{
 			var outFile = "EngineeringJobSingleFile.xml";
@@ -106,7 +106,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestWriteEngineeringSingleFileFull()
 		{
 			var outFile = "EngineeringJobSingleFileFull.xml";
@@ -122,7 +122,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestWriteEngineeringMultipleFilesFull()
 		{
 			var outFile = "EngineeringJobMultipleFilesFull.xml";
@@ -140,7 +140,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		}
 
 		[Category("LongRunning")]
-		[Test]
+		[TestCase]
 		public void TestWriteEngineeringMultipleFiles()
 		{
 			var inputData = JSONInputDataFactory.ReadJsonJob(EngineeringJob);
@@ -154,7 +154,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			//Assert.AreEqual("VEH-N/A", xml.JobInputData().JobName);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestWriteDeclarationJob()
 		{
 			var outputFile = "DeclarationJobSingleFile.xml";
@@ -176,7 +176,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("VEH-NA", xml.JobInputData.JobName);
 		}
 
-		[Test]
+		[TestCase]
 		public void TestWriteDeclarationJobFull()
 		{
 			var outputFile = "DeclarationJobFullSingleFile.xml";