Коды причин настройки для setupTestcase в Unit Test Framework [AX 2012]

Я использую записи кода причины в диалоговой форме.

Для написания модульного теста для вышеуказанного мне нужно сначала динамически вставить коды причин через код в setUpTestCase в UnitTestFramework в Dynamics AX 2012.

Как я могу это сделать? Я еще не нашел никакой помощи в Интернете.


person SHAKIR SHABBIR    schedule 29.04.2013    source источник


Ответы (2)


Сам выучил ответ.

Чтобы написать модульный тест с использованием UnitTestFramework, вы создаете класс, который расширяет класс SysTestCase (системный класс).

setUp(), setUpTestCase(), tearDown(), tearDownTestCase() — это функции базового класса, которые используются для установки и уничтожения данных во время тестового примера.

Методы setUp() и tearDown() вызываются в начале и в конце соответственно для каждой тестовой функции в классе тестового примера. Обратите внимание, что setUp(), tearDown() запускаются один раз для каждой тестовой функции, а setUpTestCase(), tearDownTestCase() запускаются только один раз для модульного теста в начале и в конце соответственно.


Возвращаясь к тому, о чем я спрашивал, мне пришлось setup reason codes вместе с комментариями о причинах написать тестовый пример.

Ниже приведен код X++, необходимый для этого.

private void createReason(str _reasonCode, str _reasonComment)
{
    ReasonTable         _reasonTable;

    _reasonTable.clear();
    _reasonTable.Asset = NoYes::Yes;
    _reasonTable.Ledger = NoYes::Yes;
    _reasonTable.Reason = _reasonCode;
    _reasonTable.Description = _reasonComment;

    _reasonTable.doInsert();
}

У вас могут быть другие настройки для настройки причин в вашем тестовом примере.

Example, you might wamt to set
    _reasonTable.Asset = NoYes::No;
instead of
    _reasonTable.Asset = NoYes::Yes;

Вызовите функцию createReason() в setUpTestCase(), и причины будут вставлены в базу данных.

Это все. Надеюсь, что это поможет кому-то в какой-то момент времени.

Будь счастлив.

~ Шакир Шаббир

person SHAKIR SHABBIR    schedule 02.05.2013

Пробовали ли вы методы setUp() и tearDown() в тестовом классе?

http://msdn.microsoft.com/EN-US/library/bb496539.aspx

Вы можете создавать данные перед выполнением тестового класса и удалять их по окончании тестирования.

person j.a.estevan    schedule 29.04.2013
comment
Да, я знаю об этих методах. Но я хочу знать, как мы можем вставить причины в ReasonTable для активов. - person SHAKIR SHABBIR; 30.04.2013