This example shows how to use shared fixtures when creating
tests. You can share test fixtures across test classes using the
SharedTestFixtures
attribute of the
TestCase
class. To exemplify this attribute, create multiple
test classes in a subdirectory of your current working folder. The test methods are
shown only at a high level.
The two test classes used in this example test the DocPolynom
class and the BankAccount
class. You can access both classes in
MATLAB®, but you must add them to the MATLAB path. A path fixture adds the directory to the current path, runs the
tests, and removes the directory from the path. Since both classes require the same
addition to the path, the tests use a shared fixture.
Create a test file for the DocPolynom
class. Create the
shared fixture by specifying the SharedTestFixtures
attribute
for the TestCase
and passing in a PathFixture
.
DocPolynomTest Class Definition File
Create a test file for the BankAccount
class. Create the
shared fixture by specifying the SharedTestFixtures
attribute
for the TestCase
and passing in a
PathFixture
.
BankAccountTest Class Definition File
The classes DocPolynomTest.m
and
BankAccountTest.m
are in your working directory. Create a
test suite from your current working directory. If you have additional tests,
they are included in the suite when you use the
TestSuite.fromFolder
method. Create the test suite at the
command prompt.
import matlab.unittest.TestSuite;
suiteFolder = TestSuite.fromFolder(pwd);
At the command prompt, run the tests in the test suite.
result = run(suiteFolder);
Setting up PathFixture. Description: Adds 'C:\Program Files\MATLAB\R2013b\help\techdoc\matlab_oop\examples' to the path. __________ Running BankAccountTest ..... Done BankAccountTest __________ Running DocPolynomTest ... Done DocPolynomTest __________ Tearing down PathFixture. Description: Restores the path to its previous state. __________
The test framework sets up the test fixture, runs all the tests in each file,
and then tears the fixture down. If the path fixture was set up and torn down
using TestClassSetup
methods, the fixture is set up and torn
down twice—once for each test file.