Тестирование веб-сокетов [Функционально]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Тестирование веб-сокетов [Функционально]

Сообщение Anonymous »

Я использую Ratchet для веб-сокетов на PHP. Мне удалось написать модульные (phpspec) и приемочные тесты (behat) для веб-сокетов, но я не могу найти способ проверить соединение с сервером веб-сокетов с помощью функционального теста phpunit. Я думаю, это тест, который проверяет, Соединение установлено и работает, это очень важно. Я подумал примерно следующее:
  • Создать (храповиковый) клиент в phpunit
  • Подключиться к URL-адресу ws (например, client->connect(host, port, ...)
  • ping websocket/отправка/получение некоторых сообщений (методы вызова клиента, например client->push(. .)..)
Проблема в том, что я не знаю, какой класс отвечает за установление соединения (создание клиента, который может запрашивать веб-сокет) в Ratchet и как тогда тест будет выглядеть следующим образом. Как я могу создать клиент Ratchet, чтобы иметь возможность подключаться и запрашивать веб-сокет в функциональном тесте phpunit (аналогично, например, веб-клиенту в стандартном функциональном тесте phpunit)

В качестве примера в рамках функционального теста функции я мог бы сделать следующее:

Код: Выделить всё

$client = static::createClient();
$client->request('GET', '/book/3', array(), array(), array('HTTP_X-Requested-With' => 'XMLHttpRequest'));
$response = $client->getResponse();
$this->assertEquals(
440,
$response->getStatusCode()
);
Или, например. создайте аутентифицированного клиента вместо анонимного. Как можно было бы «перевести» этот функциональный тест в веб-сокет с храповым механизмом?

Подробнее здесь: https://stackoverflow.com/questions/372 ... functional
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»