Проблема кодировки символов (неработающие символы) при получении снимков экрана при автоматизации тестирования - PullRequest
0 голосов
/ 29 мая 2018

У нас есть проект автоматизации, который разработан с использованием селенового веб-драйвера и рубина (капибара).Мы собираем скриншоты при неудачном тестировании.Снимки экрана вполне хороши, когда мы запускаем кейсы на наших локальных машинах.Но когда мы запускаем их на удаленной машине, мы сталкиваемся с проблемой кодировки символов на снимках экрана.У вас есть идея, чтобы решить эту проблему?

Пример снимка экрана:

screenshot

Версия Chromedriver: 2.38.552522

Версия Chrome: Google Chrome 66.0.3359.139

Удаленный компьютер:

NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

Конфигурация драйвера:

Capybara.default_driver = :headless_chrome
  Capybara.javascript_driver = :headless_chrome   
  Capybara.register_driver :chrome do |app|
    Capybara::Selenium::Driver.new(app, browser: :chrome)
  end    
  Capybara.register_driver :headless_chrome do |app|
    options = Selenium::WebDriver::Chrome::Options.new
    options.add_argument 'headless'
    options.add_argument 'disable-gpu'
    options.add_argument 'disable-popup-blocking'
    options.add_argument 'no-sandbox'
    Capybara::Selenium::Driver.new app, browser: :chrome, options: options
  end

Собрать снимок экрана:

page.save_screenshot('testResults/report_smoke_mobile/screenshot_'+scenario.name+'.png')

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

Установить шрифты в образ докера.Это работает для меня!

yum groupinstall -y Fonts
0 голосов
/ 29 мая 2018

установка свободных шрифтов в образ докера устранила проблему

yum -y install liberation-*
...