Хранение и извлечение значений переменных

С помощью методов getValue() и setValue() можно хранить и извлекать значения из переменных. В зависимости от указанного расположения хранилища, переменные можно сделать общими для нескольких тестов или хранить локально в текущем тесте.

С помощью методов getValue() и setValue() можно сохранить несколько значений в переменных за один вызов пользовательского кода. Затем можно будет создавать подстановки из переменных, а не из различных элементов пользовательского кода.

Предположим, например, что ответ содержит три значения: ИД, название книги и цену. Вы можете считать все три значения из ответа, а затем с помощью пользовательского кода задать переменные id, title и price. Затем вы можете подставить эти значения из трех переменных в нужные места теста, вместо того чтобы создавать пользовательский код для каждой переменной.

Прим.: Расположение хранилища, переданное в метод, должно совпадать с расположением хранилища, указанным в объявлении переменной.
package customcode;

import com.ibm.rational.test.lt.kernel.IDataArea;
import com.ibm.rational.test.lt.kernel.services.ITestExecutionServices;

/**
     * Для просмотра информации Javadoc интерфейсов ICustomCode2 и ITestExecutionServices
     * см. справочный раздел 'Расширение выполнения тестов за счет пользовательского кода'.
     */

/**
 * @author Примеры пользовательского кода IBM
 */

    public String exec(ITestExecutionServices tes, String[] args) {
        
        tes.getValue("myVar", tes.STORAGE_USER);  // Эта операция извлекает значение из теста для переменной myVar. Область хранения является общей для тестов.
        tes.getValue("myLocalVar", tes.STORAGE_LOCAL);  // Эта переменная хранится локально для каждого теста.
        
        tes.setValue("myVar", tes.STORAGE_USER, "myNewValue");  // Изменить значение переменной myVar, общей для тестов, на myNewValue.
        tes.setValue("myLocalVar", tes.STORAGE_LOCAL, "myLocalNewVar");  // Изменить значение локальной переменной на myLocalNewVar.
        return null;
    }

Комментарии