В последнее время я возился с полной интеграцией непрерывного тестирования в мой цикл разработки Matlab и столкнулся с проблемой, которую я не знаю, как ее обойти. Как известно почти всем пользователям, Matlab любезно скрывает подфункции в M-файле от просмотра любых функций вне этого M-файла. Пример игрушки можно увидеть ниже:
function [things] = myfunc(data)
[stuff] = mysubfunc(data)
things = mean(stuff);
end
Я хочу выполнить модульное тестирование самой подфункции. Это, AFAIK, невозможно, потому что я не могу вызвать его из какой-либо внешней функции.
В настоящее время я использую Matlab xUnit от Стива Эддинса и не могу обойти эту проблему. Простое решение - разделение подфункции на собственный M-файл - неприемлемо на практике, потому что у меня будет множество небольших функций, которые я хочу протестировать и не хочу загрязнять свою файловую систему отдельным M-файлом для каждой из них. . Что я могу сделать, чтобы написать и выполнить простые модульные тесты, не создавая новых файлов для каждой функции, которую я хочу протестировать?