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