интеграционный тест адаптеров IBM Worklight с тестом безопасности

Я разрабатываю POC для интеграционного тестирования адаптеров IBM Worklight. При этом я использую инфраструктуру RESTAssured. У меня есть адаптер, к которому применен тест безопасности. XML-фрагмент:

 <procedure name="getCatalog"
 securityTest="SingleStepAuthAdapter-securityTest" />

Для аутентификации у меня есть другой адаптер:

<procedure name="submitAuthentication" />

В моем тесте я вызываю адаптер SubmitAuthentication, а затем вызываю адаптер getCatalog. Это возвращает мне следующий ответ об ошибке:

Время выполнения: к ресурсу proc:SampleHttpAdapter.getCatalog следует обращаться только после аутентификации в области SingleStepAuthRealm.

Ниже приведен тестовый пример, который я выполняю:

public void testGetCatalog() {

    Response response =   RestAssured.given().get(BASE_URL.concat("SampleHttpAdapter&
    procedure=submitAuthentication&parameters=[\"worklight\",\"worklight\"]"));
    String sessionid = response.getSessionId();
    Cookie cookie1 = new Cookie.Builder("JSESSIONID", sessionid).build();
    System.out.println("cookie value" + cookie1.getValue());
    RequestSpecification spec_two = new RequestSpecBuilder().addCookie(cookie1)
    .setSessionId(sessionid).build();
    Response catalog_response = RestAssured.given()
    .spec(spec_two)
    .get(BASE_URL.concat("SampleHttpAdapter&procedure=getCatalog&parameters=[]"));
    String catalog_json = catalog_response.asString();
    System.out.println(catalog_json);
}

Судя по ответу, похоже, что аутентификация не сохраняется в моем запросе getCatalog. Как я могу это сделать?


person user3181690    schedule 14.01.2014    source источник


Ответы (1)


Не зная, как написаны процедуры вашего адаптера, трудно исследовать описанную выше проблему. Не могли бы вы включить процедуры адаптера submitAuthentication, а также getCatalog?

Я могу предоставить вам образец и руководство Worklight по аутентификации на основе адаптера, в котором подробно описывается, как работает процесс аутентификации. Вы даже можете использовать этот проект в качестве основы, так как он выполняет одношаговую аутентификацию адаптера. Используйте механизмы аутентификации, которые он предоставляет, и добавьте метод getCatalog для тестирования.

Презентация аутентификации на основе адаптера: http://public.dhe.ibm.com/software/mobile-solutions/worklight/docs/v610/08_03_Adapter_based_authentication.pdf

Проект аутентификации на основе адаптера: http://public.dhe.ibm.com/software/mobile-solutions/worklight/docs/v610/AdapterBasedAuthenticationProject.zip

person Joshua Alger    schedule 27.02.2014