Не получается сохранить файл
#1
Отправлено 27 января 2010 - 17:25
Требуется сохранить файл, нажимаю на ссылку, появляется следующее окно:
Не удается получить доступ к нему, пробовал обратится как к confirmation, доступа нет.
Каким способом возможно сохранить?
#2
Отправлено 27 января 2010 - 18:39
Это стандартный диалог сохранения файла в ФаерФоксе. Соответственно, селениум его не видит.Здравствуйте!
Требуется сохранить файл, нажимаю на ссылку, появляется следующее окно:
Не удается получить доступ к нему, пробовал обратится как к confirmation, доступа нет.
Каким способом возможно сохранить?
Вариантов обхода данной проблемы я вижу 3:
1. Установить флаг "Выполнять указанное действие для всех файлов данного типа автоматически" и сохранить файл (убедиться, что ФФ запущен с тем же профилем, что используется Селениумом)
2. Поискать какую-то автокликалку (типа AutoIt-а), которая бы кликнула вам на кнопку, а дальше пошло бы выполнение дальнейшего кода теста
3. Спросить Алексея Баранцева, как такую же задачу решают в аналогичных фреймворках
#3
Отправлено 27 января 2010 - 19:34
Воообще-то во всех фреймворках с этим не очень хорошо, поэтому я скорее присоединяюсь к совету номер 2.Вариантов обхода данной проблемы я вижу 3:
1. Установить флаг "Выполнять указанное действие для всех файлов данного типа автоматически" и сохранить файл (убедиться, что ФФ запущен с тем же профилем, что используется Селениумом)
2. Поискать какую-то автокликалку (типа AutoIt-а), которая бы кликнула вам на кнопку, а дальше пошло бы выполнение дальнейшего кода теста
3. Спросить Алексея Баранцева, как такую же задачу решают в аналогичных фреймворках
(К совету номер 1 тоже присоединяюсь, но это только для FF, а следуя совету номер 2 можно сделать для любого браузера).
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#4
Отправлено 27 января 2010 - 20:41
Воообще-то во всех фреймворках с этим не очень хорошо, поэтому я скорее присоединяюсь к совету номер 2.Вариантов обхода данной проблемы я вижу 3:
1. Установить флаг "Выполнять указанное действие для всех файлов данного типа автоматически" и сохранить файл (убедиться, что ФФ запущен с тем же профилем, что используется Селениумом)
2. Поискать какую-то автокликалку (типа AutoIt-а), которая бы кликнула вам на кнопку, а дальше пошло бы выполнение дальнейшего кода теста
3. Спросить Алексея Баранцева, как такую же задачу решают в аналогичных фреймворках
(К совету номер 1 тоже присоединяюсь, но это только для FF, а следуя совету номер 2 можно сделать для любого браузера).
Возьмите RFT 8.1 и много ваших проблем решится автоматом
#5
Отправлено 28 января 2010 - 06:48
Воообще-то во всех фреймворках с этим не очень хорошо, поэтому я скорее присоединяюсь к совету номер 2.Вариантов обхода данной проблемы я вижу 3:
1. Установить флаг "Выполнять указанное действие для всех файлов данного типа автоматически" и сохранить файл (убедиться, что ФФ запущен с тем же профилем, что используется Селениумом)
2. Поискать какую-то автокликалку (типа AutoIt-а), которая бы кликнула вам на кнопку, а дальше пошло бы выполнение дальнейшего кода теста
3. Спросить Алексея Баранцева, как такую же задачу решают в аналогичных фреймворках
(К совету номер 1 тоже присоединяюсь, но это только для FF, а следуя совету номер 2 можно сделать для любого браузера).
Возьмите RFT 8.1 и много ваших проблем решится автоматом
Даже не думайте. Платить минимум 3000$ за то чтоб нажать кнопку глупо, потому как это могут сделать множество бесплатных инструментов.
#6
Отправлено 28 января 2010 - 08:10
Для мозиллы работает, главное фокус окна не терять)
[codebox]selenium.click(CallsAndPutsExportToPdfIconName);
pause (2000);
selenium.keyPressNative("40");
selenium.keyPressNative("10");
[/codebox]
#7
Отправлено 28 января 2010 - 08:12
Давайте это переформулируем так: "купите за $7000 новые проблемы вместо тех, которые у вас имеются" :)Возьмите RFT 8.1 и много ваших проблем решится автоматом
(Только что посмотрел цены на лицензии на сайте IBM -- там таки написано $7000, а не $3000)
Я, собственно, не агитирую против того или иного инструмента, независимо от того, платный он или нет.
Я пытаюсь показать, что есть различные инструменты, которые можно использовать, что есть выбор, и его нужно сделать сознательно.
А Вы предлагаете готовое решение, не глядя на контекст. А если они на самом деле пойдут и купят, и окажется, что это ещё хуже, каково, а?
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#9
Отправлено 28 января 2010 - 11:42
Ну так всё верно:(Только что посмотрел цены на лицензии на сайте IBM -- там таки написано $7000, а не $3000)
Вполне может быть. Цены брал отсюда.
$ 7,030.30 1 Authorized User License + 12 Months Software Subscription and Support
$ 13,568.80 1 Floating User License + 12 Months Software Subscription and Support
Да уж. Для кликанья по одной кнопке слишком жирно.
#10
Отправлено 28 января 2010 - 15:28
Давайте это переформулируем так: "купите за $7000 новые проблемы вместо тех, которые у вас имеются" :)Возьмите RFT 8.1 и много ваших проблем решится автоматом
(Только что посмотрел цены на лицензии на сайте IBM -- там таки написано $7000, а не $3000)
Я, собственно, не агитирую против того или иного инструмента, независимо от того, платный он или нет.
Я пытаюсь показать, что есть различные инструменты, которые можно использовать, что есть выбор, и его нужно сделать сознательно.
А Вы предлагаете готовое решение, не глядя на контекст. А если они на самом деле пойдут и купят, и окажется, что это ещё хуже, каково, а?
Слово возьмите и купите - это не одно и то же. Многие компании в России используют и крякнутые версии...
Контекст таков - нужно найти решение задачи. Я предлагаю вариант - RFT. Данное средство поддерживает разработку на Java + достаточно хорошо работает с WEB приложениями. В данном контексте это актуально.
Ихмо на сайте IBM - можно скачать триал. И попробывать. А вдруг понравится настолько, что будет желание купить.
#11
Отправлено 28 января 2010 - 16:26
я написал и у меня всё работает и все счастливы
#12
Отправлено 28 января 2010 - 16:32
Нет, не проще. Если на то пошло, то можно взять уже готовые решения типа java.awt.Robot .а не проще ли используя WIN API (геморно правда, но уверренно)
я написал и у меня всё работает и все счастливы
А так, продолбаться над нативными вызовами, которые помогут только для конкретного браузера, под конкретную ось и (вполне вероятно) локализацию, при этом получить весь вышеуказанный гемор - напрасная трата сил.
#13
Отправлено 01 февраля 2010 - 12:44
использовать или покупать что-то другое - не катит :(
кроме Java robot-a
ведь наверное существуют ещё какие то решения.
никто не подскажет ?
#14
Отправлено 01 февраля 2010 - 14:00
1. Установить флаг "Выполнять указанное действие для всех файлов данного типа автоматически" и сохранить файл.
2. Использовать нативные методы, но при этом браузер должен быть активным окном.
Другого нет, выбирай =)
#15
Отправлено 01 февраля 2010 - 14:56
В дополнение к тому, что подсказал mcreature, если не принципиально, под каким браузером выполняется сохранение, то можете конкретно участок теста , который сохраняет файл, выполнять под фаерфоксом в хром-режиме, предварительно выставив настройки сохранения файлов данного типа по умолчанию. После этого возвращаться в исходный браузер.ну так всё таки как бороться с такими сообщениями с помощью Selenium-a ?
использовать или покупать что-то другое - не катит :(
кроме Java robot-a
ведь наверное существуют ещё какие то решения.
никто не подскажет ?
#16
Отправлено 01 февраля 2010 - 15:07
Кстати, WinAPI не очень-то будет работать с FireFox -- у него нативные диалоги используют нестандартные самодельные виджеты...а не проще ли используя WIN API (геморно правда, но уверренно)
я написал и у меня всё работает и все счастливы
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#17
Отправлено 02 февраля 2010 - 21:33
Пользуясь случаем хотел узнать, а для окна подтверждения, есть подход у селениума?
Окно такого вида:
#18
Отправлено 03 февраля 2010 - 10:42
Если это стандартное окно подтверждения, то для работы с ним есть методы:Спасибо за советы, запустил под тестовым профилем, указал требуемую папку для сохранения, установил флажок, работает на ура!
Пользуясь случаем хотел узнать, а для окна подтверждения, есть подход у селениума?
Окно такого вида:
isConfirmationPresent, getConfirmation, chooseOkOnNextConfirmation, chooseCancelOnNextConfirmation()
Примеры работы с ним рассматриваются в частности здесь.
#19
Отправлено 27 ноября 2010 - 04:25
Если это стандартное окно подтверждения, то для работы с ним есть методы:Спасибо за советы, запустил под тестовым профилем, указал требуемую папку для сохранения, установил флажок, работает на ура!
Пользуясь случаем хотел узнать, а для окна подтверждения, есть подход у селениума?
Окно такого вида:
isConfirmationPresent, getConfirmation, chooseOkOnNextConfirmation, chooseCancelOnNextConfirmation()
Примеры работы с ним рассматриваются в частности здесь.
не подскажите, как используюся эти методы на PHP, подставляю chooseOkOnNextConfirmation(), лог показывает что ошибки нет, но подтверждение не проходит
$this->selenium->select("SELL_CA_TYPE", "label=FIRST, FIRST");
$this->selenium->select("P13_CA_RUN_TPN_TYPE", "label=РНН");
$this->selenium->select("P13_PERIOD_START_MONTH", "label=Январь");
$this->selenium->select("P13_PERIOD_START_YEAR", "label=2009 год");
$this->selenium->select("P13_PERIOD_END_MONTH", "label=Январь");
$this->selenium->select("P13_PERIOD_END_YEAR", "label=2010 год");
$this->selenium->chooseOkOnNextConfirmation();
$this->selenium->click("//form[@id='wwvFlowForm']/table[5]/tbody/tr/td[1]/table[1]/tbody/tr/td[2]/a"); #-вызывает confirm окно
$this->selenium->waitForPageToLoad("30000");
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных