Hi Jeff. I will try to present our case and hopefully it will explain the question. We developed what we call ‘System Test Framework’ on top of MbUnit. Without delving into technicalities, the net result is the following: 1. QA engineers write XML files which specify scenarios. These scenarios are described in terms of “System Test Families”, “System Tests” and “System Test Units”. Each family contains one or more system tests. Each system test contains one or more test units. It is possible to have many different scenarios, all of which are specified using the same set of system test units as the building blocks. 2. Developers write MbUnit test fixtures as follows: system test families map to a test fixture. test units map to [test] methods and “System Tests” map to an instance of the fixture. 3. We control the order of method execution in each fixture using the “Order” attribute. The order between fixtures is defined by their order in the XML and the order they are added in a [StaticTestFactory] method. “Test Units” that exist in the fixture but are not defined in the “System Test” do not execute. The same test unit may be present in the scenario more than once 4. Our test fixtures differ from ordinary MbUnit test fixture in the following attributes: - SystemTestFamily instead of TestFixture - SystemTestFamilySetUp – runs before the FixtureSetUp method of the first system test in the family. - SystemTestFamilyTearDown- runs after the FixtureTearDown method of the last system test in the family. - SystemTestUnit instead of Test - SystemTestSetUp instead of FixtureSetUp - SystemTestTearDown instead of FixtureTearDown 5. SystemTestFamilySetUp and SystemTestFamilyTearDown are new attributes, not having counterparts in the standard MbUnit paradigm, but deriving from ContributionMethodPatternAttribute and added to InitializeTestInstanceChain.After and DisposeTestInstanceChain.Before chains respectively - to guarenty they will run before FixtureSetUp and after FixtureTearDown. 6. To keep the same hierarchy in the report, for each family we create a TestSuite and we add references to the test fixture for each “System Test” in the family.
Now to our problem - SystemTestFamilySetUp and SystemTestFamilyTearDown methods execute in the fixture level but we would like them to log their output and errors in the containing TestSuite level. Hope that makes sense, Danny. -- You received this message because you are subscribed to the Google Groups "MbUnit.User" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/mbunituser?hl=en.
