nunit-core team mailing list archive
-
nunit-core team
-
Mailing list archive
-
Message #00450
[Bug 505700] Re: Data Driven TestFixture
We need the equivalent of TestCaseSource for parameterized fixtures. Not
sure about the nesting right away - that may be a further addition at a
later time.
** Changed in: nunit-3.0
Importance: Undecided => High
** Changed in: nunit-3.0
Status: New => Triaged
--
Data Driven TestFixture
https://bugs.launchpad.net/bugs/505700
You received this bug notification because you are a member of NUnit
Core Developers, which is the registrant for NUnit Framework.
Status in NUnit Test Framework: Triaged
Bug description:
Hi,
I have hierarchy like data-driven test cases that’s 3 levels deep.
Currently the TestFixture can only be instantiated only a constant
number of times. How can I parameterize the TestFixture based on
source input, same like the TestCaseSource attribute?
Ref:
http://groups.google.com/group/nunit-discuss/browse_thread/thread/1628db6b5977876b
http://stackoverflow.com/questions/2018758/convert-string-to-c-code-before-compilation
Here is simple example, I need the NUnit GUI to be something like this.
Rectangle
Rectagle("length1", "width1")
CircleInsideTheRectangle
CircleInsideTheRectangle("radius1")
MaxSquareOutsideCircleAndInsideRectangleTest
MaxSquareOutsideCircleAndInsideRectangleTest("side1")
MaxSquareOutsideCircleAndInsideRectangleTest("side2")
MaxSquareOutsideCircleAndInsideRectangleTest("side3")
...
CircleInsideTheRectangle("radius2")
MaxSquareOutsideCircleAndInsideRectangleTest
MaxSquareOutsideCircleAndInsideRectangleTest("side4")
MaxSquareOutsideCircleAndInsideRectangleTest("side5")
Rectagle("length2", "width2")
CircleInsideTheRectangle
CircleInsideTheRectangle("radius3")
MaxSquareOutsideCircleAndInsideRectangleTest
MaxSquareOutsideCircleAndInsideRectangleTest("side6")
...
The Rectangle and CircleInsideTheRectangle TestFixture class can be any number (it's data driven). The MaxSquareOutsideCircleAndInsideRectangleTest is a data driven test method.
While sure everything can be made into TestCaseSource, for complex test the data input will be very long.
For efficiency, I would like the TestFixture class to be instantiated only once for all the child TestFixture and TestCase. Because the setting up and tearing down could take a long time. As seen the child require some information from the parent. This may need abstract class and inheritance, but it's not easy to do.
Thank you very much.
Best regards,
Edward
References