C++ Builder 10.3 Rio - Тестирование
Похоже, C++ Builder 10.3. поставляется с новым testframework.hpp
, Класс Assert
больше не существует
Может кто-нибудь сказать мне, как использовать этот новый фреймворк?
Я в отчаянии, потому что я написал много кода и, очевидно, Rio не совсем совместим.
например, следующая строка кода, написанная в Builder 10.2.3, больше не работает:
Dunitx.Testframework::Assert::IsTrue (result == true);
2 ответа
Я нашел решение в файле testframework.hpp. Использование теперь стало намного проще, но вам нужно знать, как с этим справиться. Описание в справочной системе embaracdero неверно и должно быть исправлено.
Вы, кажется, нашли TestFramework.hpp для DUnit. Но очевидно, что ваш код раньше использовал DUnitX. Это похожие, но несовместимые тестовые среды.
Чтобы получить Dunitx.Testframework.hpp, который вам нужен, просто добавьте DUnitX.TestFramework.pas в ваш тестовый проект C++Builder (добавьте его в диспетчере проектов) и полностью перестройте ваш проект. Компилятор Pascal сгенерирует необходимый для вас файл .hpp.
Но прежде чем делать все это, вы можете скопировать свой проект в новую папку и загрузить его оттуда, просто чтобы быть уверенным. Таким образом, старый проект не будет изменен. Обязательно обновите все пути в менеджере проектов и настройках библиотеки C++, если это необходимо.
Если вы думаете, что DUnit проще в использовании (я, конечно, так и сделаю), продолжайте использовать это. Но вам придется переписать некоторые части ваших тестов. Дополнительную информацию можно найти в файлах справки Delphi (и на веб-сайте) и на веб-сайте DUnit.
DUnit был прежним тестовым фреймворком для Delphi (отсюда и D), но когда-то в прошлом он был заменен более современным DUnitX. Но при этом используются некоторые функции Delphi (например, атрибуты Delphi), которые усложняют использование в C++Builder. DUnit по-прежнему является частью установки RAD Studio.