Шаг теста должен прекратиться, если утверждение сценария testStep не выполнено - PullRequest
0 голосов
/ 13 мая 2019

Мне нужно запустить testStep несколько раз с разной загрузкой данных из внешнего файла (используя зацикливание объекта файла для запуска testSteps для каждой записи) и проверить данные из ответа для каждого значения.Я в состоянии сделать это и его выполнение и работает нормально.но когда когда-либо произойдет сбой подтверждения, выполнение не останавливается, и оно будет продолжено и показывает, что testStep пройден.я могу видеть сбой в окнах «журнала сценариев» каждый раз, когда происходит сбой, потому что я использую log.info с run.status

, и я отмечаю флажок «abort if test, если возникает какая-либо ошибка» и «fail tes»случаи, если testStep завершается с ошибкой "в параметрах тестового набора.

все еще продолжают выполнение тестовых примеров

Важное примечание: описанный выше сценарий происходит, когда assert не выполняется в середине записей, если он не выполняется в течение последнегозаписать, а затем остановить выполнение.

Код, который я использовал

Этот код скрипта Groovy: файл повторяет testStep в соответствии с количеством строк в файле

// Get tha path to an input file from a custom property
def inputFilePath = testRunner.testCase.testSuite.getPropertyValue( "inputFile" )
// Get the test case we want to Run
def tc=testRunner.testCase.testSuite.testCases["DetectRules"].testSteps["Rules_DENF_224"]

// Iterate through the input file

File file = new File(inputFilePath.toString()).eachLine{

// Set Test Suite custom properties
testRunner.testCase.testSuite.setPropertyValue( "InValue", it.split(",")[0] )
testRunner.testCase.testSuite.setPropertyValue( "OutValue", it.split(",")[1] )
testRunner.testCase.testSuite.setPropertyValue( "outDesc", it.split(",")[2] )

def runner = tc.run(testRunner,context)

//Get the Json response from execution

def FraudReq = testRunner.testCase.testSuite.testCases["DetectRules"].testSteps["Rules_DENF_224"].testRequest.response.responseContent

// Log info to a output

log.info "Execution of test case with Input value: ${it.split(",")[0]} and expected returned value: ${it.split(",")[1]} and Expected Description is: ${it.split(",")[2]} ${runner.status}"

// Sleep for a second since were using public service
sleep 500
}


this is testStep --> Script Assertion: section

import groovy.json.JsonSlurper
def response= messageExchange.response.responseContent
 def jsonsl= new JsonSlurper().parseText(response)

 def expected=context.getTestCase().getPropertyValue(“rule number”)
assert  expected==jsonsl.results[4].id

, есливыше assert завершается ошибкой, тогда testStep должен остановиться, но testStep завершается ошибкой, но выполнение не останавливается.

любая помощь приветствуется

...