如何在Chrome上使用MAC上的量角器进行复制和粘贴?

Jér*_*lle 4 javascript angularjs protractor

如何在Chrome上使用MAC上的量角器进行复制和粘贴?

newInput.sendKeys(protractor.Key.chord(browser.controlKey, "a"));
newInput.sendKeys(protractor.Key.chord(browser.controlKey, "c"));
newInput.sendKeys(protractor.Key.chord(browser.controlKey, "v"));
Run Code Online (Sandbox Code Playgroud)

当我使用这段代码时,我有"未定义"

我在这篇文章中使用此代码在端到端测试中使用跨平台键盘快捷方式,但它不起作用:

browser.controlKey = protractor.Key.CONTROL; //browser.controlKey is     a global variable and can be accessed anywhere in the test specs
browser.getCapabilities().then(function(capabilities){
    if(capabilities.caps_.platform === "MAC")
        browser.controlKey = protractor.Key.COMMAND;
});

elm.sendKeys(protractor.Key.chord(browser.controlKey, "c"));
Run Code Online (Sandbox Code Playgroud)

ale*_*cxe 6

这是一个已知chromedriver问题.不幸的是,从Protractor/WebDriverJS发送键盘快捷键不适用于Chrome + Mac.

在我们的项目中,我们已经将所有涉及使用键盘快捷键的测试移至Firefox:

var firefox_only_specs = [
    "../specs/sometest1.spec.js",
    "../specs/sometest2.spec.js"
];

exports.config = {
    multiCapabilities: [
        {
            browserName: "chrome",
            chromeOptions: {
                args: ["incognito", "disable-extensions", "start-maximized"]
            },
            specs: [
                "../specs/*.spec.js"
            ],
            exclude: firefox_only_specs
        },
        {
            browserName: "firefox",
            specs: firefox_only_specs
        }
    ],

    // ...
}
Run Code Online (Sandbox Code Playgroud)