Как подтвердить правильность текста сообщения в веб-сокете Java

У меня есть задача: подготовить тесты с помощью WebSocket. Собственно, в будущем это будет несколько веб-сокетов.

    @Test
    public void test() throws DeploymentException, IOException, URISyntaxException {
        WebsocketHelper websocketHelper = new WebsocketHelper();
        websocketHelper.checkWebSocketMessageInRoles();
    }

Я создал WebsocketHelper.class со следующим содержанием:

    private void createConnection(String cookieSessionId, String uri) throws URISyntaxException, IOException, DeploymentException {
    this.container = ContainerProvider.getWebSocketContainer();
    this.endpoint = new WebsocketClientEndpoint();
    ClientEndpointConfig cec = ClientEndpointConfig.Builder.create()
            .configurator(new ClientEndpointConfig.Configurator() {
                @Override
                public void beforeRequest(Map<String, List<String>> headers) {
                    super.beforeRequest(headers);
                    List<String> cookieList = headers.get("Cookie");
                    if (null == cookieList) {
                        cookieList = new ArrayList<>();
                    }
                    cookieList.add("connect.sid=" + cookieSessionId);     // set your cookie value here
                    headers.put("Cookie", cookieList);
                }
            }).build();
    session = this.container.connectToServer(this.endpoint, cec, new URI(uri));
    this.endpoint.onMessage("");
}

public void checkWebSocketMessageInRoles() throws DeploymentException, IOException, URISyntaxException {
    String cookieSessionId = loginRestObject.testCookies().getValue("connect.sid");
    createConnection(cookieSessionId, URI_ROLES);
}

В конце у меня есть класс WebsocketClientEndpoint, где у меня есть метод onOpen.

       @Override
public void onOpen(Session session, EndpointConfig config) {
    this.session = session;
    this.session.addMessageHandler(new javax.websocket.MessageHandler.Whole<String>() {
        @Override
        public void onMessage(String message) {System.out.println(message);
        }
    });
}

Вопрос в том, как я могу проверить сообщение после изменения действий на странице. Например, я нажимаю кнопку Selenium WebDriver Ok и захожу, веб-сокет возвращает ожидаемый json.

0 ответов

Другие вопросы по тегам