|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
Привет! Подскажите, кто сталикивался, как можно протетировать WS сервер на правильность работы методов. В чем суть: нужно приложение, которое бы иммитировало подключение нескольких клиентов к серверу и общение между собой. По факту нужно: подключились два клиента. Первый отправил сообщение, второй получил его и провалидировал его (порядок получения, количество символов и т.п.). Сейчас запускаю приложение, которое создает два потока для каждого клиента, которые подключаются к серверу. Проблема - в этом приложении правильно перенаправить ответы от сервера на нужный клиент. Возможно, смотрю не в том направлении, поэтому создал топик! Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 10:55 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip, открой одного клиента в хроме второго в лисе третьего edge и общайся между ними ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 11:25 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
Приветствую, вадя, мне нужно автоматизировать тесты ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 11:32 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip Приветствую, вадя, мне нужно автоматизировать тесты в данном случае это потеря времени ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 11:40 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
вадя, ))) спасибо за сочуствие ))) в смысле, это автоматизировать нереально? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 12:04 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip вадя, ))) спасибо за сочуствие ))) в смысле, это автоматизировать нереально? почему нереально? было бы желание В чем суть: нужно приложение https://www.sql.ru/forum/job ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 12:19 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev, хотелось бы совета куда рыть...основная проблема - как разделить запросы от сервера к двум-трем клиентам, если клиенты были запущены в потоках из одного приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 12:22 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip Leonid Kudryavtsev, хотелось бы совета куда рыть...основная проблема - как разделить запросы от сервера к двум-трем клиентам, если клиенты были запущены в потоках из одного приложения. А этот вопрос вообще не понимаю. Кода, как и принято на данном подфоруме, нифига нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 12:24 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
Как минимум в примерах в гугле вижу WebsocketClientEndpoint который, как предполагаю, и разделяет клиентов между собой. p.s. с WS не работал, могу ошибаться ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 12:26 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip Leonid Kudryavtsev, хотелось бы совета куда рыть...основная проблема - как разделить запросы от сервера к двум-трем клиентам, если клиенты были запущены в потоках из одного приложения. Обычно добавляют ID клиента при запросе. Например ГУИД. Или число 1,2,3 при трех клиентах. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 12:31 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip ...если клиенты были запущены в потоках из одного приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:04 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, Обычно добавляют ID клиента при запросе. Например ГУИД. Или число 1,2,3 при трех клиентах делается соответствие имя-id_сессии_ws ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:07 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
вадя, У него не было ничего про сессии. Ты зачем то внес это в топик из своего соседнего. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:19 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
PetroNotC Sharp У него не было ничего про сессии. Ты зачем то внес это в топик из своего соседнего. что у ws есть сессия ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:33 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
вадя qi_ip ...если клиенты были запущены в потоках из одного приложения. Это просто предположение... Запускается сначала главный поток. Берется "тест", который нужно проверить. Например, клиент1 отправляет сообщение клиенту2. Из главного потока создаю два дополнительных thread'а и в каждом запускаю клиенты (1 и 2). Из первого посылается сообщение второму...вот тут загвоздка. Клиента делаю с помощью того же TooTallNate/Java-WebSocket. У него есть override метод onMessage, куда придет сообщение от сервера. Но не совсем еще додумкал, как его перенаправить во второй клиент. Возможно, я вообще не в том направлении копаю, поэтому хочу узнать, какие есть еще варианты. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:40 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip, Сначала делают работающую демку. А потом уже тесты. Иди демку делай. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:43 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip, явно не туда есть сервер ws у него есть "слушатель сети" конечная точка-метод onMessage его входные параметры - само сообщение и id_данного_подключения можно ответить напрямую на ото сообщение отправив ответ по id_данного_подключения а можно отправить ответ на любое подключение или на несколько для этого есть метод перебирающий массив id подключений как правило юзер отправляет сообщение по имени юзера поэтому надо создать соответствие имя-id_подключения ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:51 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip, правильно-ли я понял, что вы хотите протестировать простой и прямой кейс: Один клиент послал сообщение, другой клиент это сообщение получил? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:53 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
Дмитрий Мух qi_ip, правильно-ли я понял, что вы хотите протестировать простой и прямой кейс: Один клиент послал сообщение, другой клиент это сообщение получил? В общих чертах да. Только клиентов будет от 1 до 2-3 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:56 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip Дмитрий Мух qi_ip, правильно-ли я понял, что вы хотите протестировать простой и прямой кейс: Один клиент послал сообщение, другой клиент это сообщение получил? В общих чертах да. Только клиентов будет от 1 до 2-3 Какие тестовые сценарии из этого следуют? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 13:58 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
Дмитрий Мух qi_ip пропущено... В общих чертах да. Только клиентов будет от 1 до 2-3 Какие тестовые сценарии из этого следуют? Например, регистрация клиента: 1. Клиент отправляет некорректный логин - сервер возвращает ошибку. Тест успешно отработал 2. Клиент отправляет корректный логин - сервер возвращает 200ОК. Тест успешно отработал С несколькими клиентами: 1. Клиент1 отправляет 5 сообщений Клиенту2 в заданном порядке. Клиент2 получает сообщения в правильном порядке. Тест успешно отработал 2. Клиент1 отправляет 5 сообщений Клиенту2 в заданном порядке. Клиент2 получает сообщения в неправильном порядке. Тест завалился. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 14:03 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip, У тебя порядок сообщений хоть раз нарушался? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 14:06 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip, Некорректный логин это не ошибка. Это рабочий вариант. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 14:08 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
PetroNotC Sharp qi_ip, Некорректный логин это не ошибка. Это рабочий вариант. В конкретном случае, просто проверяется правильность работы проверки по regex ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 14:11 |
|
Как протестировать WS сервер
|
|||
---|---|---|---|
#18+
qi_ip Дмитрий Мух пропущено... Какие тестовые сценарии из этого следуют? Например, регистрация клиента: 1. Клиент отправляет некорректный логин - сервер возвращает ошибку. Тест успешно отработал 2. Клиент отправляет корректный логин - сервер возвращает 200ОК. Тест успешно отработал С несколькими клиентами: 1. Клиент1 отправляет 5 сообщений Клиенту2 в заданном порядке. Клиент2 получает сообщения в правильном порядке. Тест успешно отработал 2. Клиент1 отправляет 5 сообщений Клиенту2 в заданном порядке. Клиент2 получает сообщения в неправильном порядке. Тест завалился. ИМХО тут следует выстроить обычную пирамиду тестирования: модульные тесты, интеграционные, функциональные. И не пытаться ограничиться исключительно последними. И с чего вдруг порядок сообщений может быть нарушен? На каком этапе? При передаче от клиента к серверу? При обработке сообщений сервером? При отправке от сервера клиенту? По мне так всё это отдельно следует тестировать и начать с логики обработки сообщений на сервере. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2020, 14:20 |
|
|
start [/forum/topic.php?fid=59&msg=39970825&tid=2120773]: |
0ms |
get settings: |
23ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
538ms |
get tp. blocked users: |
2ms |
others: | 342ms |
total: | 980ms |
0 / 0 |