отправитель ключа узла не работает в приложении electron в MAC OS

#node.js #electron #spectron

Вопрос:

Я провожу интеграционное тестирование своего электронного приложения, в котором есть множество веб-просмотров. Он имеет функцию увеличения масштаба с помощью cmd = клавиши . Я пытаюсь использовать node-key-sender для имитации нажатия клавиш. Но, похоже, это не работает. Ни один из ключей, похоже, не работает— Я пытался

  1. Отправка одного ключа
 var ks = require('node-key-sender');
ks.sendKey('a');
 
  1. Отправка ключей muliple
 var ks = require('node-key-sender');
ks.sendCombination(['control', 'shift', 'v']);
 

Когда я запускаю интеграционный тест, приложение electron открывается, и ниже появляется значок Java (сигнализирующий о том, что отправитель ключа узла запущен?) и это все. В поле ввода не вводится ключ.

Но если я использую keys функцию WebdriverIO, поле ввода заполняется правильным значением.

Я попытался абстрагироваться от как можно большего количества деталей реализации, насколько это возможно. Я могу предоставить больше, если сочту это необходимым.

PS: Я пробовал использовать RobotJS и WebdriverIO. Поскольку оба они построены поверх webdriver, они не поддерживают cmd ключ, так как webdriver его не поддерживает.