我正在尝试测试复杂的网络应用程序 GUI,其中涉及一些重要的键盘交互。我对 GUI 的特定组件进行了单元测试,但我也使用 Cucumber 和 Capybara 进行端到端验收测试。我为此使用了无头 Linux 机器,一切都是通过 ssh 完成的。
问题是,我找不到支持 Javascript、允许模拟键盘事件并且是无头的 Capybara 驱动程序。
到目前为止我的研究总结:
水豚 webkit。尝试,研究了很多文档和代码,发现它没有简单的键盘模拟,但我可以编写自己的使用
execute_script
和这个问题,或者尝试弄清楚它是如何trigger
工作的。硒。有
send_keys
,听起来很完美,但是。“只要安装了 Firefox,一切都为您设置好了”。我无法安装 Firefox,但我可以尝试设置Selenium-remote 。水豚-envjs。
trigger
看起来有点 hacky,没有文档,但可以通过查看代码来弄清楚它是如何工作的。
所以,我厌倦了研究和寻求指导。
是否有一些我缺少的明显解决方案?它应该首先尝试我列表中的哪个选项?也许有人在无头环境中使用 Capybara 测试模拟 Javascript 键盘事件有一些有用的经验?