The NUnit3FrameworkDriver is still using the original framework API we created for NUnit3. Back in 2018, @rprouse created an improved API for use with the .NET Core targets but we have continued to use the older API for .NET Framework targets.
Until recently, we were supporting three different NUnit3 drivers. The removal of the .NET Standard driver, which has not been used for a while, brought us to two.
In this issue, I'm proposing to combine those two, NUnit3FrameworkDriver and NUnitNetCore31Driver into a single driver combining the code for both .NET Framework and .NET Core and allowing the driver to decide which API to use depending on the target runtime and NUnit framework version in use. This can give a number of benefits.
- A cleaner API for NUnit 4 and newer builds of NUnit 3.
- Simpler code in the driver factory
- Fewer tests to maintain
- In my opinion, code that makes it easier to understand the differences between the two APIs and how we use them.
Tasks
The
NUnit3FrameworkDriveris still using the original framework API we created for NUnit3. Back in 2018, @rprouse created an improved API for use with the .NET Core targets but we have continued to use the older API for .NET Framework targets.Until recently, we were supporting three different NUnit3 drivers. The removal of the .NET Standard driver, which has not been used for a while, brought us to two.
In this issue, I'm proposing to combine those two,
NUnit3FrameworkDriverandNUnitNetCore31Driverinto a single driver combining the code for both .NET Framework and .NET Core and allowing the driver to decide which API to use depending on the target runtime and NUnit framework version in use. This can give a number of benefits.Tasks