2015-01-19 34 views
6

SOAP UI aracını kullanarak Rest API test ediyorum.SOAP UI isteğinde istek başlığı olarak istek başlığı gönderiliyor

Birincisi, bana jsessionid verdi ve sonra benim gerçek istekte ben adıyla istek başlığına bir parametre eklendi "Cookie" ve yukarıda çıkarılan jsessionid değeri bunu sağlamak başka API çarptı. Her şey iyi çalıştı.

İstediğim şey bir şekilde çerez/jessionid'i açıkça/el ile gerçekleştirmeden istek başlığında dinamik olarak ayarlamaktır.

Nasıl Yapılır?

cevap

2

Groovy komut dosyalarını kullanarak Çerezleri kolayca değiştirebilirsiniz. Orada tüm çerezleri okuyabilir

import com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport 
def myCookieStore = HttpClientSupport.getHttpClient().getCookieStore() 

:

def myCookies = myCookieStore.getCookies() 
def interestingCookie 
myCookies.each { 
    if(it.name == "JSESSIONID") 
     interestingCookie = it 
} 

başka bir talepte yeni bir Cookie oluşturmak için:

import org.apache.http.impl.Cookie.BasicClientCookie 
def myNewCookie = new BasicClientCookie("cookie_name", "cookie_value") 
myNewCookie.version = 1 
myNewCookie.domain = "qa.test" 
myCookieStore.addCookie(myNewCookie) 

SoapUI yılında Çerezler Çerez deposunda tutulur Daha eski bir blog yazısı olan here'da ek bilgilerim var.

6

UI'den bir uygulama oturumu oluşturabilir ve oturumu kaydeden çerezleri kullanabilirsiniz. Tarayıcının geliştirici araçlarını kullanarak tarayıcıdan oturum çerezi ayrıntılarını alın. Resim, çerezlerin tarayıcıda nerede bulunduğunu gösterir: Getting cookie header parameter

soapUI'de, tarayıcıdan aldığınız değere sahip bir başlık özniteliği oluşturun ve isteği çalıştırın. İstek, isteği yürütmek için çerezde kaydedilen aynı oturum kimliğini (JSESSIONID) kullanacaktır. Aşağıdaki resimler, çerez değerini üstbilgiye nasıl ekleyeceğinizi göstermektedir. Adding cookie value o request header

+0

OP bunu nasıl yapacağını biliyordu. Soru, bu sürecin nasıl otomatikleştirileceğiydi. –

İlgili konular