Size: a a a

QA — Автоматизация

2020 February 05

RS

Roman Solodukhin in QA — Автоматизация
Edward Galiaskarov
А не подскажите что такое auto hot key?
Язык сценариев для управления устройством ввода (но он вроде только на windows)
источник

EG

Edward Galiaskarov in QA — Автоматизация
Roman Solodukhin
Язык сценариев для управления устройством ввода (но он вроде только на windows)
Роман, простите, туплю. Нельзя какой-то пример, чтобы снять когнитивный ступор?
источник

RS

Roman Solodukhin in QA — Автоматизация
Edward Galiaskarov
Роман, простите, туплю. Нельзя какой-то пример, чтобы снять когнитивный ступор?
источник

EG

Edward Galiaskarov in QA — Автоматизация
Спасибо за ссылку. Правда не совсем понимаю, как это мне поможет.
источник

EG

Edward Galiaskarov in QA — Автоматизация
Справка по handsontable дает такую информацию

https://handsontable.com/docs/7.3.0/demo-copy-paste.html

в коде я работают следующим образом
выбираю все записи таблицу, которую хочу скопировать
Given(/^Select the whole table$/) do
 page.execute_script("#{$ghot}.selectAll()")
end

$ghot - глобальная переменная в которой хранится имя переменной js для этой таблицы

Given(/^Copy to clipboard "(.*?)"$/) do |id|
 #p page.evaluate_script("$(document))
 result = page.evaluate_script("window.document.execCommand('copy')")
 p result
end

далее идет попытка скопировать в в буфер обмена, пробовали
document.execCommand('copy') - в консоле все работает
но в ходе исполнения теста нет :(

хотя результат выдает true, но клипборд не обновляется, т.е. команда не срабатывает

На stackflow было написано, что возможно драйвер нужно настроить особым образом
добавил в файле окружения
options = Selenium::WebDriver::Chrome::Options.new
     options.add_preference('profile.content_settings.exceptions.clipboard', {
             '*': {'setting': 1}
              })
     Capybara::Selenium::Driver.new(app, browser: :chrome, options: options)

а в коде теста пытался сделать такую настройку страницы
Given(/^Grant clipboard$/) do
 page.driver.browser.execute_cdp('Browser.grantPermissions', origin: page.server_url, permissions: ['clipboardRead', 'clipboardWrite'])
end

но ругается на параметры
Given Grant clipboard                                                        # features/step_definitions/test_steps.rb:145
     invalid argument: Invalid parameters
       (Session info: chrome=79.0.3945.130) (Selenium::WebDriver::Error::InvalidArgumentError)
Пока не разобрался

с send_keys тоже не получается и похоже capybara не дает работать с буфером по горячим клавишам.

Можем реализовать копирование (а потом и вставку) на уровне скрипта - но это уже будет не совсем то, что требуется тестировать :)
источник

ES

Eugene Stogniy in QA — Автоматизация
Ilya Didenko
От инструмента хотелось бы увидеть
- минд деревья покрытия
- авто подставление значений со страницы
- парсинг страници и авто определения селекторов
- отладка - прогон 100раз сценария + рандомные значения сценария
- поддержка версий
- интеграция с ащур
ООО какие у вас требования .... посмотрите в сторону модных сейчас АИ Тест платформ типа testim.io - но лни и половины требований не покрывают
источник

ES

Eugene Stogniy in QA — Автоматизация
Ilya Didenko
я разраб, хочу нашим тестировщикам облегчить жизнь...
Научи програмированию и тест тулзе которая самая подходящяя для платформы
источник

LY

Lev Yarushin in QA — Автоматизация
Edward Galiaskarov
Справка по handsontable дает такую информацию

https://handsontable.com/docs/7.3.0/demo-copy-paste.html

в коде я работают следующим образом
выбираю все записи таблицу, которую хочу скопировать
Given(/^Select the whole table$/) do
 page.execute_script("#{$ghot}.selectAll()")
end

$ghot - глобальная переменная в которой хранится имя переменной js для этой таблицы

Given(/^Copy to clipboard "(.*?)"$/) do |id|
 #p page.evaluate_script("$(document))
 result = page.evaluate_script("window.document.execCommand('copy')")
 p result
end

далее идет попытка скопировать в в буфер обмена, пробовали
document.execCommand('copy') - в консоле все работает
но в ходе исполнения теста нет :(

хотя результат выдает true, но клипборд не обновляется, т.е. команда не срабатывает

На stackflow было написано, что возможно драйвер нужно настроить особым образом
добавил в файле окружения
options = Selenium::WebDriver::Chrome::Options.new
     options.add_preference('profile.content_settings.exceptions.clipboard', {
             '*': {'setting': 1}
              })
     Capybara::Selenium::Driver.new(app, browser: :chrome, options: options)

а в коде теста пытался сделать такую настройку страницы
Given(/^Grant clipboard$/) do
 page.driver.browser.execute_cdp('Browser.grantPermissions', origin: page.server_url, permissions: ['clipboardRead', 'clipboardWrite'])
end

но ругается на параметры
Given Grant clipboard                                                        # features/step_definitions/test_steps.rb:145
     invalid argument: Invalid parameters
       (Session info: chrome=79.0.3945.130) (Selenium::WebDriver::Error::InvalidArgumentError)
Пока не разобрался

с send_keys тоже не получается и похоже capybara не дает работать с буфером по горячим клавишам.

Можем реализовать копирование (а потом и вставку) на уровне скрипта - но это уже будет не совсем то, что требуется тестировать :)
А через контекстное меню не пробовали? Это надо через actions
источник

EG

Edward Galiaskarov in QA — Автоматизация
Lev Yarushin
А через контекстное меню не пробовали? Это надо через actions
Это оставил на самый последний случай. Хотя paste в контекстном все равно не реализуешь :(
источник

LY

Lev Yarushin in QA — Автоматизация
А вообще, для чего вам тестировать сторонний софт? Там свои тестеры есть
источник

L

Lucky in QA — Автоматизация
Lev Yarushin
А вообще, для чего вам тестировать сторонний софт? Там свои тестеры есть
тссс, конкуренты
источник

EG

Edward Galiaskarov in QA — Автоматизация
Lev Yarushin
А вообще, для чего вам тестировать сторонний софт? Там свои тестеры есть
это Вы мне?
источник

LY

Lev Yarushin in QA — Автоматизация
Edward Galiaskarov
это Вы мне?
Да ) Handsontable есть кому проверять функции copy-paste
источник

EG

Edward Galiaskarov in QA — Автоматизация
Если да, то в мыслях не было. Я тестирую свою функциональность. Заказчику пофиг, hansontable накосячил, или это мы как-то не верно обрабатываем страницу. Потому некоторые часто используемые функции нужно проверять.

Хотя мысль вашу понял :)
источник

EG

Edward Galiaskarov in QA — Автоматизация
Хотя вот заказчик формирует смету где-то в экселе (или сторонней ерп) , копирую что он там наформировал и хочет вставить в таблицу сметы на сайте. handsontable дает такой функционал, но а мы проверяем что все ставилось, передалось в базу, не скривилось, сохранилось. Но сэмулировать то вставку большого массива данных надо
источник

ID

Ilya Didenko in QA — Автоматизация
Eugene Stogniy
ООО какие у вас требования .... посмотрите в сторону модных сейчас АИ Тест платформ типа testim.io - но лни и половины требований не покрывают
Спасибо!
источник

LY

Lev Yarushin in QA — Автоматизация
Edward Galiaskarov
Хотя вот заказчик формирует смету где-то в экселе (или сторонней ерп) , копирую что он там наформировал и хочет вставить в таблицу сметы на сайте. handsontable дает такой функционал, но а мы проверяем что все ставилось, передалось в базу, не скривилось, сохранилось. Но сэмулировать то вставку большого массива данных надо
Я бы через запросы к бэку проверял такое. Отображение - отдельно на заранее подготовленных данных.
источник

LY

Lev Yarushin in QA — Автоматизация
Вот есть хорошее видео, как раз про Ruby ) https://www.youtube.com/watch?v=JYY_52DTJqs
источник

EG

Edward Galiaskarov in QA — Автоматизация
Lev Yarushin
Я бы через запросы к бэку проверял такое. Отображение - отдельно на заранее подготовленных данных.
Ну да разумно, и это будет.
источник

EG

Edward Galiaskarov in QA — Автоматизация
Спасибо, только у меня bit.ly не работатает
источник