Open DaymaNKinG990 opened 6 years ago
Привет @DaymaNKinG990, спасибо за баг-репорт, пожалуйста, попробуйте свежую версию тут:
https://github.com/dzharii/swd-recorder/releases (SWD PageRecorder 28 JUN 2018 v3.13.0)
Спасибо большое, @dzharii ! Обязательно завтра на работе опробую новую версию)))
И снова привет! @dzharii у меня снова трабла, я уже не совсем понимаю почему, но у меня на работе все также остался баг, хотя вчера вечером из дома я тестил обновленный билд, и он работал, с чем связанно тут, я конкретно сказать не могу, как то очень странно. Он все также копирует в Веб Элементы.
П.С. Обнаружил что через Firefox все работает, возможно что-то с Chrome. Попробую выяснить.
Загрузил видеоролик в зипе. Конечно это не детальная инфа, но в Хроме не работает почему то, хотя дома работало, а вот Фаерфоксе все работает нормально.
@DaymaNKinG990 тут вот я мало чем могу помочь, разве что могу рекомендовать работать в FireFox ;) Причина может быть в политике безопасности Windows или самого Chtome. Какие именно настройки за это отвечают -- я не могу сказать. Если вы попробуете открыть инструменты разработчика Chtome, то там в Console скорее всего будет ошибка (это не простая задача, потому что WebDriver будет пытаться эту панель закрыть, действовать нужно быстро :D).
Еще у PageRecorder есть логи в папке logs
, может быть там есть что-то интересное? (Exception / Error). Но да, если что-то работает в одном браузере, но не работает в другом -- это на 99% связано с настройками безопасности браузера.
@dzharii Я вас понял, спасибо, постараюсь максимально выяснить)
В логах ничего не нашел.
@DaymaNKinG990
Если это поможет, то вот как этот "хак" с передачей элемента и браузера работает:
Есть браузерный скрипт, который пишет в переменную (в браузере) document.swdpr_command
SwdPageRecorder_v3.13.0.2018.06.28\JavaScript\ElementSearch.js
createCommand = function(jsonData) {
var myJSONText;
hello("createCommand");
myJSONText = JSON.stringify(jsonData, null, 2);
document.swdpr_command = myJSONText; // <=== THIS
return bye("createCommand");
};
и есть код на стороне десктопного приложения, который эту переменную читает. Может случится, что либо скрипт не может записать значение (т.е. он выполняется. но значение document.swdpr_command для активного документа не меняется), либо десктнопное приложение (Webdriver) не может получить доступ к этой переменной и получает null/undefined при чтении. Это как раз может быть ограничено настройками безопасности, или, например, антивирусом
@dzharii Да, кажется я понял, скорее антивирус, надо будет глянуть, спасибо за ответ)
У меня вопрос @dzharii ! А получается этот рекордер, по мимо того что показывает путь к веб элементу и создает page object. Так поэтому page object можно генерировать Java файл. И насколько понял он делает проверку этих элементов через Assert, и в итоге получается как юнит тестирование, я правильно понял?
П.С. Я извиняюсь, мисс кликнул.
Привет Дим!) Hi dear dev. I found a bug in 2018. When i trying to add element, then it doesn't work. I don't know why. I updated chromedriver to latest version. So, mybe you can check it.