Рубрики
Без рубрики

Пример Тайм-аута Тестирования

Мы можем указать время ожидания для наших тестовых тестов. Это можно сделать в тестовом классе, установив свойство timeOut аннотации @Test. Когда методы испытаний

Автор оригинала: Pankaj Kumar.

Мы можем указать время ожидания для наших тестовых тестов. Это можно сделать в тестовом классе, установив Тайм-аут свойство @Test аннотации.

Если методы тестирования не завершаются в указанное время ожидания, org.testng.internal.thread.Исключение ThreadTimeoutException выбрасывается, и метод помечается как неудачный.

Время Ожидания тестирования @Пример теста

Вот простой класс, в котором для методов тестирования указывается время ожидания.

package com.journaldev.timeout;

import org.testng.annotations.Test;

public class TimeoutExample {

	@Test(timeOut = 300)
	public void foo() throws InterruptedException {
		Thread.sleep(200);
		System.out.println("foo method executed");
	}

	@Test(timeOut = 300)
	public void bar() throws InterruptedException {
		Thread.sleep(400);
		System.out.println("bar method executed");
	}
}

Когда мы выполняем вышеописанный класс, мы получаем следующий вывод.

[RemoteTestNG] detected TestNG version 6.14.3
foo method executed
PASSED: foo
FAILED: bar
org.testng.internal.thread.ThreadTimeoutException: Method com.journaldev.timeout.TimeoutExample.bar() didn't finish within the time-out 300

Пример тайм-аута XML TestNG

Мы также можем указать значение тайм-аута в XML-пакете, как на уровне пакета, так и на уровне тестирования. Если в обоих местах указан тайм-аут, то для выполнения методов тестирования учитывается наименьшее значение.

Давайте рассмотрим это на простом примере пакета XML TestNG.





	
		
			
		
	

Обратите внимание, что время ожидания на уровне пакета составляет 500 мс, в то время как время ожидания на уровне теста составляет 300 мс. Когда он выполняется, мы получаем следующий вывод.

foo method executed
PASSED: foo
FAILED: bar
org.testng.internal.thread.ThreadTimeoutException: Method com.journaldev.timeout.TimeoutExample.bar() didn't finish within the time-out 300

Измените время ожидания на уровне пакета на 300 мс, а время ожидания на уровне теста-на 500 мс. Мы все равно получим то же исключение, что и выше, это означает, что для выполнения рассматривается наименьшее значение тайм-аута.

Это все для краткого ознакомления с конфигурациями тайм-аута тестирования.