使用键盘输入触发使用Java的WebDriver事件

使用键盘输入触发使用Java的WebDriver事件,java,selenium,webdriver,keyboard-events,Java,Selenium,Webdriver,Keyboard Events,我试图通过创建热键来加速使用SeleniumWebDriver的web应用程序的使用。我希望某些webdriver单击事件与键盘键关联。例如,按键盘上的“s”将单击“提交”按钮 我知道如何使用webdriver单击和定位元素,但不知道如何在Firefox打开时(通过webdriver get调用)监听Java中的键。我的应用程序没有GUI,因为它正在打开一个firefox窗口,它将失去焦点,所以KeyListener不是一个选项 我访问了我正在调查的JNI图书馆。还有其他建议吗?在这种情况下,将

我试图通过创建热键来加速使用SeleniumWebDriver的web应用程序的使用。我希望某些webdriver单击事件与键盘键关联。例如,按键盘上的“s”将单击“提交”按钮

我知道如何使用webdriver单击和定位元素,但不知道如何在Firefox打开时(通过webdriver get调用)监听Java中的键。我的应用程序没有GUI,因为它正在打开一个firefox窗口,它将失去焦点,所以KeyListener不是一个选项

我访问了我正在调查的JNI图书馆。还有其他建议吗?

在这种情况下,将整个过程自动化几乎总是更好的主意

比如说,你们需要每天更新员工的工资。最好是花时间阅读XLS文件(几乎是将这些数据传递给注定要做重复工作的人的标准方式),逐行阅读,然后以某种方式将其输入到应用程序中


我知道我没有向您提供您期望的答案,但请尝试将整个过程自动化。这可能有点棘手,但与简单的键映射相比是可行的,而且最终要快得多

我诚实的意见是,请开发人员直接在页面上实现这些键快捷方式。否则,您将花费数天时间开发类似java应用程序的集成web浏览器,它正在收听关键事件…嗨,Pavel,这不是我的应用程序,但我需要每天使用它,手动执行重复任务需要花费大量时间,这就是为什么我想创建热键供我个人使用。我同意如果它是我的应用程序,请求添加热键将是理想的选择。当我说我的应用程序没有GUI等时,我指的是我正在开发的Java/WebDriver应用程序,它在已经存在的web应用程序上运行。我访问了这个库,它可能会起作用:我从上面的链接使用Java全局系统钩子作为键盘,它正在工作。以前有没有人使用过.jar,并且可以验证它不是恶意代码?它是从JNI原始库中派生出来的。再次你好,帕维尔,谢谢你的回答。我熟悉JXL库,在以XLS文件的形式获取数据的情况下,自动化整个过程是最好的选择。在这种情况下,我无法自动化整个过程,因为我需要手动验证数据,但一旦数据被验证,将其输入到web应用程序中就可以自动化——这就是热键的用途。那么,如何验证数据呢?在验证时,您可以使用验证数据创建新文件我在想,如果数据是好的,按A键并保存在文件X中,如果数据以后需要重新检查,按B键并通过电子邮件发送给Y人,等等。验证是手动的,我需要最好的方式连接到操作系统来读取键,因为我认为单从Java是不可能的。现在,我正在使用上面链接的.jar,它工作正常,但可能有一个更简单的解决方案。