Effacer les filtres
Effacer les filtres

Creating MATLAB tests in separate folder/module

10 vues (au cours des 30 derniers jours)
Andrew Hodgson
Andrew Hodgson le 7 Déc 2021
Commenté : Andrew Hodgson le 7 Déc 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:
  1. Is it common to locate the tests seperatly from the source code in MATLAB?
  2. What is the best way to add the root directory of my project to the search path of the tests?
  3. Is there another better best practice way of placing all tests outside of the root directory that I'm not aware off?

Réponse acceptée

Yongjian Feng
Yongjian Feng le 7 Déc 2021
Modifié(e) : Yongjian Feng le 7 Déc 2021
Use
addpath("your_root_path")
  3 commentaires
Yongjian Feng
Yongjian Feng le 7 Déc 2021
You just need to add it once. The matlab path is global. Once added, all will get it.
Andrew Hodgson
Andrew Hodgson le 7 Déc 2021
Brillient, thank you.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Testing Frameworks dans Help Center et File Exchange

Tags

Produits


Version

R2016b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by