2016-03-07 2 views
3

Я хотел бы вернуть собственное сообщение об ошибке, если утверждение не выполнено в SoapUI.Ответ на возврат ошибки, если утверждение не удалось в SoapUI

Я написал утверждения. Я всегда получаю ОК, хотя утверждение не выполняется.

Я попытался ниже сценарий:

def assertionList = [] 

def idNotNull = (id!=null) ? "(id is not null" : assertionList.add("(id is null") 

if(!assertionList.isEmpty()) 
{ 
    return "exceptionResponse" 
} 
assert assertionList.isEmpty() : assertionList.toString() 

Но это вернется, прежде чем утверждают выполняется. Следовательно, утверждение передается, хотя оно должно потерпеть неудачу.

Есть ли способ, которым я могу это достичь?

ответ

1

Это потому, что скрипт возвращает только сообщение, но не делает его неудачным. Более того, return не следует использовать здесь. Так как есть return, заявление assertion в вашем коде так и не дошло.

Вот что вам нужно сделать:

Есть два варианта, вы можете выбрать, как указано ниже в сценарии

  1. Использование Если - если условие не выполнено, то показать ошибку
  2. Используя утверждение - показать сообщение об ошибке при ошибке утверждения

Вот полный рискованный скрипт ниже, обратите внимание, что id недвижимость не найдена в t он скрипт, который вы предоставили, поэтому добавлен, чтобы избежать ошибки, которая отсутствует.

def assertionList = [] 
def id 
def idNotNull = (id!=null) ? "(id is not null" : assertionList.add("(id is null") 
/** 
* You may use one of the below two options 
*/ 
//Option 1 : Using If condition fails, then Error 
//not required to use isEmpty() like you did or null, by default it will check 
if(assertionList){ 
    throw new Error(assertionList.toString())  
} 
//Option 2:Using assertion 
assert 0 == assertionList.size() : assertionList.toString() 
Смежные вопросы