将 Ctrl+A 组合发送到元素

Sending Ctrl+A combination to an element

本文关键字:元素 Ctrl+A 组合      更新时间:2023-09-26

我正在使用量角器进行角度端到端(又名e2e测试(。

为了将键发送到元素,我使用:

element(by.model('myModel')).sendKeys('Test');

如何发送密钥组合,例如Ctrl+A


我已经在github上搜索了量角器源代码,但没有找到相关示例。

这在Linux和Windows中是完全可能的,但在OSX中则不然。

var elm = element(by.model('myModel'));
elm.sendKeys(protractor.Key.chord(protractor.Key.CONTROL, "a"));

还有一个非元素变体:

browser.actions().keyDown(protractor.Key.CONTROL).sendKeys('a').perform();

如果使用量角器热键,则可以使用简单的热键字符串(如角度热键中的热键(在量角器测试中触发它们。

因此,这将变成:

var hotkeys = require('protractor-hotkeys');
hotkeys.trigger('ctrl+a', { targetElement: element(by.model('myModel')) });

看起来像一个旧帖子。但是,只需共享一个解决方案就可以在MAC中使用量角器清除Tinymce编辑器的内容。

var body_editor = element(by.id('tinymce'));/*id of body inside iframe*/
body_editor.click().sendKeys(protractor.Key.chord(protractor.Key.COMMAND, "a"));
body_editor.click().sendKeys(protractor.Key.BACK_SPACE);