Creating MATLAB tests in separate folder/module
5 views (last 30 days)
Show older comments
Andrew Hodgson
on 7 Dec 2021
Commented: Andrew Hodgson
on 7 Dec 2021
I would like to store all my tests in a seperate tests folder within my workspace. The intention of this is to keep the code base simpler and to allow me to use matlab.unittest.TestSuite.fromFolder to create a test suite of all the tests in this directory which can be run in one command.
For example
/
|- tests/
|- testFunctionOne.m
|- testFunctionTwo.m
| functionOne.m
| functionTwo.m
I'm coming from a Python background and this is quite common there. The Python Unittests module searches through a module for all tests and runs them.
When I try this in MATLAB this creates an error as the tests cannot find the functions located in the root directory. This makes sense becasue they're not on the search path when running functions from the tests directory. I don't want to dwell on Python, but this also happens there too. The solution is to add the root directory to the PYTHONPATH variable.
My questions are as follows:
- Is it common to locate the tests seperatly from the source code in MATLAB?
- What is the best way to add the root directory of my project to the search path of the tests?
- Is there another better best practice way of placing all tests outside of the root directory that I'm not aware off?
0 Comments
Accepted Answer
Yongjian Feng
on 7 Dec 2021
Edited: Yongjian Feng
on 7 Dec 2021
Use
addpath("your_root_path")
3 Comments
Yongjian Feng
on 7 Dec 2021
You just need to add it once. The matlab path is global. Once added, all will get it.
More Answers (0)
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!