Javascript TestCafe没有';不支持剪贴板
我只是尝试将文本从gmail复制/粘贴到另一个输入,然后意识到cafe测试不支持ctrl-c、ctrl-v 以下是我试图做的: pom: 测试: 我看到了这个例子,但我不知道如何在我的案例中使用它。Javascript TestCafe没有';不支持剪贴板,javascript,testing,integration-testing,e2e-testing,testcafe,Javascript,Testing,Integration Testing,E2e Testing,Testcafe,我只是尝试将文本从gmail复制/粘贴到另一个输入,然后意识到cafe测试不支持ctrl-c、ctrl-v 以下是我试图做的: pom: 测试: 我看到了这个例子,但我不知道如何在我的案例中使用它。 谁知道如何解决这个问题呢?我想知道在这种情况下您测试了什么。Ctrl+C和Ctrl+V有效吗?但这很可能与你的应用程序无关。你为什么不直接获取文本,然后输入到用户的电子邮件输入中呢?为什么必须使用Ctrl+C和Ctrl+V来执行此操作 如果您确实需要粘贴功能,则在.typeText()方法中有一个选
谁知道如何解决这个问题呢?我想知道在这种情况下您测试了什么。Ctrl+C和Ctrl+V有效吗?但这很可能与你的应用程序无关。你为什么不直接获取文本,然后输入到用户的电子邮件输入中呢?为什么必须使用Ctrl+C和Ctrl+V来执行此操作 如果您确实需要粘贴功能,则在
.typeText()方法中有一个选项:
等待t
.typeText(this.emailInput,emailInput,{paste:true});
既然你是从Gmail复制的,我想你不需要用Ctrk+C。我想你也不需要用UI来实现。这有很好的理由,一是你无法控制Gmail应用程序,所以如果他们改变用户界面/选择器,你的测试就会失败。这是不可靠的,你要避免这种情况。了解如何使用API调用。我想知道在这种情况下您测试了什么。Ctrl+C和Ctrl+V有效吗?但这很可能与你的应用程序无关。你为什么不直接获取文本,然后输入到用户的电子邮件输入中呢?为什么必须使用Ctrl+C和Ctrl+V来执行此操作
如果您确实需要粘贴功能,则在.typeText()方法中有一个选项:
等待t
.typeText(this.emailInput,emailInput,{paste:true});
既然你是从Gmail复制的,我想你不需要用Ctrk+C。我想你也不需要用UI来实现。这有很好的理由,一是你无法控制Gmail应用程序,所以如果他们改变用户界面/选择器,你的测试就会失败。这是不可靠的,你要避免这种情况。学习如何使用API调用
import { Selector, t} from 'testcafe';
class LoginPage {
copyStepCarrierPassword: Selector;
copyCarrierPassword: Selector;
emailInput: Selector;
constructor(){
this.copyStepCarrierPassword = Selector('[class="ams bkG"]');
this.copyCarrierPassword = Selector('[class="gmail_quote"]');
this.emailInput = Selector('[id="userEmail"]');
}
async copyPassword(){
await t
.selectText(this.copyCarrierPassword, 1, 10)
.pressKey('ctrl+c');
}
async navigateToCarrierPage(carrierPageUrl){
await t
.navigateTo(carrierPageUrl)
}
async setEmailInput(emailInput){
await t
.typeText(this.emailInput, emailInput)
.pressKey('ctrl+v');
}
}
test('Copy/Paste password',
async t => {
await t
LoginPage.copyStepPassword();
await t.wait(1000);
LoginPage.copyPassword();
await t.wait(3000);
await t.openWindow(carrierUrl);
LoginPage.setEmailInput('');
await t.wait(3000);
}