В следующем примере приведен пользовательский код, который можно использовать в качестве основы для оценки результатов точки синхронизации. Этот шаблон можно использовать для создания класса, выполняющего синхронизацию, когда синхронизация изображений и синхронизация оконных событий не подходят для теста.
import com.ibm.rational.test.lt.kernel.services.ITestExecutionServices;
import org.eclipse.hyades.test.common.event.VerdictEvent;
import com.ibm.rational.test.lt.execution.citrix.customcode.CitrixCustomCodeImpl2;
import com.ibm.rational.test.lt.execution.citrix.customcode.ICitrixCustomCode2;
public String exec(ITestExecutionServices tes, String[] args) {
ICitrixCustomCode2 thisCode = new CitrixCustomCodeImpl2(tes);
// получить последнее состояние точки проверки
int verdict = thisCode.getLastVerificationPointVerdict();
if (verdict != VerdictEvent.VERDICT_PASS) {
// этот пример выдает сообщение, но должен быть адаптирован под конкретные нужды
tes.getTestLogManager().reportMessage("последнее состояние точки проверки: " + thisCode.verdictEventToString(verdict));
}
return null;
}
В следующем примере демонстрируется, как записать снимок экрана во время воспроизведения для целей отладки. Снимок экрана записывается в протокол теста и может быть просмотрен на панели Синхронизация изображений Citrix.
import com.ibm.rational.test.lt.kernel.services.ITestExecutionServices;
import com.ibm.rational.test.lt.execution.citrix.customcode.*;
public String exec(ITestExecutionServices tes, String[] args) {
ICitrixCustomCode2 thisCode = new CitrixCustomCodeImpl2(tes);
// Создать снимок всего экрана и записать в протокол:
thisCode.logFullScreenCapture();
// Создать снимок части экрана и записать в протокол:
// thisCode.logPartialScreenCapture(x, y, width, height);
// Создать снимок части экрана и записать в файл:
// thisCode.savePartialScreenCapture(filename, x, y, width, height);
return null;
}