我正在使用赛普拉斯进行e2e测试。我在屏幕上使用handsontable。它类似于Excel工作表。我无法使用cypress将内容写入其单元格,因为该单元格实际上只是一个td
,但是在内部它在编辑时会映射到textarea
。
有人可以提供一种使用cypress的测试方法,以便在其单元格中输入文本。
我绑定了以下内容,但没有用。
cy.get('.handsontable tbody tr:nth-child(1) td:nth-child(2)').dblclick().type('test');
答案 0 :(得分:3)
我可以输入具有以下规格的单元格。
context('handsontable', () => {
it('handsontable', () => {
cy.visit("https://handsontable.com/examples?headers");
cy.get('.handsontable tbody > :nth-child(10) > :nth-child(2)').click().click().get('.handsontableInput').type('test');
})
})
由于某些原因,dblclick()
无法正常工作。
答案 1 :(得分:1)
如果无法输入类型,则可以尝试在已标识的字段中粘贴text
,如下所示;我运行了以下测试,可以将AUD
粘贴到第一行td的currency
列中。我在Windows 10操作系统和Chrome 70测试运行程序上使用赛普拉斯3.1.2
版
describe("Cypress test on handsontable", function() {
it("Some test on handsontable", function() {
cy.visit("https://handsontable.com/examples?headers")
cy.get('.handsontable tbody tr:nth-child(1) td:nth-child(5)').then($td => {
$td.text('AUD');
});
});
});