Как получить все общее количество тестов и статус из сценария разрыва проекта - PullRequest
0 голосов
/ 15 марта 2019

Ниже приведен сценарий разрыва для получения всех подсчетов тестов и статуса от разрыва комплекта, но мне нужно получить общее количество тестов и статус комплекта от разрыва проекта, но, к сожалению, он не будет поддерживать объект класса тестового прогона.

def failedTestCases = 0
runner.results.each { testCaseResult -> 
    def name = testCaseResult.testCase.name
    if(testCaseResult.status.toString() == 'FAILED') {
        failedTestCases++
        log.info "$name has failed"
        testCaseResult.results.each { testStepResults ->
            testStepResults.messages.each { msg -> log.info msg }
        }
     } else {
         log.info "$name works correctly"
     }
} 

1 Ответ

0 голосов
/ 18 марта 2019

В вашем проекте создайте сценарий установки:

project.setPropertyValue("testcasesRun","0")
project.setPropertyValue("testcasesFailed","0")

На каждом из ваших TestSuites создайте сценарий TearDown примерно так:

def failedTestCases = 0
def testCasesRun = 0
runner.results.each { testCaseResult -> 
    testCasesRun++
     if(testCaseResult.status == com.eviware.soapui.model.testsuite.TestRunner.Status.FAILED) {
        failedTestCases++
    }
}

def existingFailedTestCases = new Integer( runner.testSuite.project.getPropertyValue("testcasesFailed") )
def newFailedValue = existingFailedTestCases + failedTestCases
runner.testSuite.project.setPropertyValue("testcasesFailed",newFailedValue.toString())

def existingRunTestCases =  new Integer( runner.testSuite.project.getPropertyValue("testcasesRun") )
def newRunTestCases = existingRunTestCases + testCasesRun
runner.testSuite.project.setPropertyValue("testcasesRun",newRunTestCases.toString())

После запуска проекта выдолжно иметь два свойства проекта, содержащих количество подсчитанных и неудачных тестовых случаев.

...