有访问剪贴板内容的方法吗?

时间:2018-09-12 15:19:57

标签: automated-tests clipboard e2e-testing testcafe

我正在测试一个具有嵌入模式的页面,该页面带有一个带有嵌入代码的文本框和一个“复制”按钮,该按钮应将文本框的内容复制到剪贴板上,以便用户可以将其粘贴到其他位置。有没有一种方法可以测试单击“复制”按钮并验证剪贴板内容与文本框的内容匹配?谢谢!

1 个答案:

答案 0 :(得分:0)

TestCafe无法自动执行浏览器的内置行为,包括“复制和粘贴”功能。经浏览器开发人员测试,预期该功能可以正常工作。

您可以尝试通过以下方式检查脚本/按钮是否执行了copy命令:

const overwriteCopyCommand = ClientFunction(() => {
    document.execCommand = command => window.lastExecutedCommand = command;
});

const getLastExecutedCommand = ClientFunction(() => window.lastExecutedCommand);

await overwriteCopyCommand();
await t
    .click('.copy-url-button')
    .expect(getLastExecutedCommand()).eql('copy');

不幸的是,根据JavaScript的限制,我没有找到一种方法来检查复制的文本。