2017-09-01 58 views
5

Próbuję pokazać spokój z Restassured w moim miejscu pracy i pokazać im, jak niesamowite i łatwe w użyciu jest użycie jaśminu.js Jak zawsze utknąłem z kilku rzeczy w podstawowym teście próbuję zrobić Moje badanie mówiSerenity + Rest services

Given we have valid credentials for the client using this test 
    When we try to serach for a medicine '<medicine>' 
    Then we get a valid '<perfLabel>' response with search results 
    |medicine|perflabel| 
    |Salbutamol|perflabel1| 
    |Panadol|perflabel2| 
    |Salbutamol (GA)|perflabel3| 

Kiedy przejść do następnego kroku

@When("we try to serach for a medicine '(.*)' ") 
    public void tryToSearchUsingEquals(String medicine) 
    { 
    tsApiActions.requestServiceSearchWhichEquals(medicine); 
    } 


In my Step method 



@Step 
    public void requestServiceSearchWhichEquals(String medicine) 
    { 
    host = "http://www.int.abc.com.au/api/cs/v1/terminology-service/trade-product/search-summary?offset=0&limit=20&prefLabel=eq "+medicine+"&sort=prefLabel DESC&cache=false"; 

    requestSend(host); 
    } 

pytania jakie są

  1. Jak wprowadzić zmienne (Salbutamol, Panadol) do pliku URI?
  2. Jak umieścić ten identyfikator URI w oddzielnym pliku właściwości i wywołać go w metodzie Step?

Każda pomoc jest bardzo ceniona Dzięki

Odpowiedz

1

RestAssured wnioski o tę samą strukturę kodu, który należy dodać do swojej sendRequest metody:

given(). 
    param("prefLabel", medicine). 
when(). 
    get(URL). 
then(). 
    body(containsString(medicine)); 

URL może pochodzić z pliku właściwości, ale trzeba aby utworzyć metodę przesyłania go przed uruchomieniem testu, a następnie musisz utworzyć metodę getPropety(), aby uzyskać bieżącą wartość, której potrzebujesz.

Proponuję zapoznać się z oficjalnej dokumentacji tutaj: