Groovy-скрипт, который получает имя TestCase с шагом выполнения TestCase

У меня есть два набора тестов, в первом тестовом наборе у меня есть тестовый набор с шагом "Run TestCase", который будет запускать тестовый набор из второго тестового набора. Я хотел бы, чтобы во втором наборе тестов был отличный сценарий, который предоставит мне имя тестового набора из первого набора тестов.

Примечание: я не могу предоставить эти имена самостоятельно, это должно быть сделано автоматически.

Можно ли получить имя тестового случая, который имеет шаг выполнения TestCase?

2 ответа

Вы можете использовать приведенный ниже код, чтобы заполучить тот шаг, который имеет "шаг выполнения TestCase"

// объяснение:- Получил итератор для TestSuite. Используя этот итератор, пройдя все тестовые случаи, а затем пройдя все этапы тестирования

// затем проверяем, имеет ли какой-либо тестовый шаг это имя "Run TestCase"

Это было вы можете найти шаг теста под этим testuite в любом из тестовых случаев.

for(tc in testRunner.testCase.testSuite.getTestCaseList())
{
for(ts in  tc.getTestStepList())
  {
   if( ts.getName()=="Run TestCase")
   {
    log.info "Found that step "
    log.info "TestCaseName = " + tc.getName()
    log.info "TestSuiteName = " + testRunner.testCase.testSuite.getName()

  }
 }
}

Вы можете выйти на уровень выше на уровне проекта и проверить все комплекты, выполнив внешний цикл

testRunner.testCase.testSuite.project.getTestSuiteList()

В вашей целевой testCase (1b) создайте пользовательское свойство 'caller'. Затем в исходном testCase (1a) перед "шагом выполнения теста" создайте скрипт groovy для восстановления имени теста:

    testName = testRunner.testCase.name
    return testName

Когда вы выполняете шаг запуска тестового примера, установите ${Groovy Script#result} в качестве значения для свойства 'caller'

Затем на подходящем шаге вашей цели восстановите значение вызывающего

    def caller = context.expand( '${#TestCase#caller}' )
    log.info caller

Это не очень просто, но может удовлетворить ваши потребности

Александр

Другие вопросы по тегам