Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Такое возможно сделать? / 20 сообщений из 20, страница 1 из 1
30.12.2014, 09:18
    #38846243
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Допустим, программа должна сама зайти на веб-страницу, заполнить поле, нажать кнопку. Такое возможно сделать? Готовые программы не интересуют, интересно как такое сделать.
...
Рейтинг: 0 / 0
30.12.2014, 09:24
    #38846249
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Для сервера с которым общается браузер нет никакого "нажал кнопку" и "заполнил поле". Для сервера есть HTTP запрос и ответ. Всё.
...
Рейтинг: 0 / 0
30.12.2014, 10:28
    #38846300
scf
scf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Ну что за менталитет на этом форуме? Знают же, но лишь бы пакость сказать.

В целом, есть два пути.
Во-первых, можно эмулировать HTTP-запросы от браузера. Берешь джавовый URL.openConnection() или Apache HTTP Client и посылаешь на сервер те же запросы, что и настоящий браузер.
Во-вторых, есть Selenium. Он позволяет напрямую "управлять" браузером через джавовый API. Используется в основном для приемочного тестирования веб-сайтов, но сойдет и для твоей цели.
...
Рейтинг: 0 / 0
30.12.2014, 10:29
    #38846301
lleming
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Открываем браузер затем открываем девелопер консоль в браузере, далее вкладка сеть.
Делаем обыкновенный логин смотрим какой запрос ушел на сервер как называеются параметры.
Открываем api к apache common http lib изучаем
Формируем программно аналогичный запрос post/get заполняем параметрами, выполняем запрос получаем ответ в виде http страницы в String и решаем что с ним делать дальше.
Можно парсировать можно просто проверить в String наличие ключевого слова чтобы убедиться что логин прошел успешно.
...
Рейтинг: 0 / 0
30.12.2014, 10:33
    #38846303
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
scfНу что за менталитет на этом форуме? Знают же, но лишь бы пакость сказать.
Это вы мне???

scfВо-вторых, есть Selenium.
Для тех кто в танке:
rema174Готовые программы не интересуют, интересно как такое сделать.
...
Рейтинг: 0 / 0
30.12.2014, 10:48
    #38846315
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
scfВо-вторых, есть Selenium. Он позволяет напрямую "управлять" браузером через джавовый API. Используется в основном для приемочного тестирования веб-сайтов, но сойдет и для твоей цели.

а может и Selenium... а как он работает, как либа с api, или как отдельная программа?
...
Рейтинг: 0 / 0
30.12.2014, 23:23
    #38846928
Leonidv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
rema174,

Как библиотека. Гуглится на раз-два-три. Сейчас подход через selenium вроде как более предпочтительный, чем просто посылка запросов. Если больших нагрузок не планируется - самое то.
...
Рейтинг: 0 / 0
31.12.2014, 00:19
    #38846951
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
круто. я про селением встречал тут раньше, но не вникал, полагая что это какой-то отдельный софт, а оказывается всё гораздо интереснее, потому что уже приходилось делать запросы и парсить их - это довольно хлопотно.
...
Рейтинг: 0 / 0
01.01.2015, 05:27
    #38847374
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
rema174Допустим, программа должна сама зайти на веб-страницу, заполнить поле, нажать кнопку. Такое возможно сделать? Готовые программы не интересуют, интересно как такое сделать.Возможно, если встроить IE:
[spoiler] например
YouTube Video
...
Рейтинг: 0 / 0
01.01.2015, 05:30
    #38847375
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Usmanrema174Допустим, программа должна сама зайти на веб-страницу, заполнить поле, нажать кнопку. Такое возможно сделать? Готовые программы не интересуют, интересно как такое сделать.Возможно, если встроить IE:
[spoiler] например
YouTube Video
...
Рейтинг: 0 / 0
06.01.2015, 06:46
    #38848859
mad_nazgul
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
rema174Допустим, программа должна сама зайти на веб-страницу, заполнить поле, нажать кнопку. Такое возможно сделать? Готовые программы не интересуют, интересно как такое сделать.

Делал такое.
Смотреть в сторону HTTPClient.
Есть несколько реализаций, каждая со своими особенностями.
...
Рейтинг: 0 / 0
06.01.2015, 16:52
    #38849326
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
mad_nazgul,

А как быть с JavaScript'ом ?
...
Рейтинг: 0 / 0
07.01.2015, 00:12
    #38849569
забыл ник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Usmanmad_nazgul,

А как быть с JavaScript'ом ?

зачастую он не нужен ведь, а если очень нужен то достаточно легко впилить Java Scripting api. Хотя если надо именно чтобы html рендерился - тогда конечно проще через silenium
...
Рейтинг: 0 / 0
08.01.2015, 08:35
    #38850025
mad_nazgul
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Usmanmad_nazgul,

А как быть с JavaScript'ом ?

Обычно все сводиться к POST или GET запросу.
Находишь в JS где они вызываются, смотришь параметры, эмулируешь ч/з HTTPClient.
Одно но, если работа идет ч/з WebSocket, тогда нужно делать по другому.
...
Рейтинг: 0 / 0
08.01.2015, 16:38
    #38850263
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
mad_nazgulНаходишь в JS где они вызываются...
...
Рейтинг: 0 / 0
09.01.2015, 23:59
    #38851052
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Предлагаю в топике Селениум не рассматривать. Это отдельный программный продукт
который не имеет никакого отношения к тебе Java-разработки. В противном случае
мы запутаемся.

Про HttpClient уже сказали. Я присоединяюсь.
...
Рейтинг: 0 / 0
10.01.2015, 10:10
    #38851129
Leonidv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
maytonПредлагаю в топике Селениум не рассматривать. Это отдельный программный продукт
который не имеет никакого отношения к тебе Java-разработки.
Selenium имеет отличную интеграцию с Java как на уровне API (т.е. вызовов его из Java), так и на уровне интеграции с инструментами. Считать, что он не имеет никакого отношения к java разработке не корреткно. Большинство UI-тестов пишутся на Selenium + JUnit.
...
Рейтинг: 0 / 0
10.01.2015, 12:23
    #38851170
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
Обсуждение Селениума более уместо здесь http://www.sql.ru/forum/testing-qa
...
Рейтинг: 0 / 0
10.01.2015, 15:20
    #38851259
NikolayV81
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
mad_nazgulUsmanmad_nazgul,

А как быть с JavaScript'ом ?

Обычно все сводиться к POST или GET запросу.
Находишь в JS где они вызываются, смотришь параметры, эмулируешь ч/з HTTPClient.
Одно но, если работа идет ч/з WebSocket, тогда нужно делать по другому.

а бывает 10 вложенных iframe + аппаратный ключ, там даже на c# с виндовым браузером не всё гладко.
...
Рейтинг: 0 / 0
10.01.2015, 22:59
    #38851405
Leonidv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такое возможно сделать?
mayton,

с чего бы это? Если мне нужно работать с selenium java api - то вполне уместно и здесь обсуждать. Я, например, один раз использоваль selenium hub для задач, очень и очень далеких от QA.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Такое возможно сделать? / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]