我是cypress / html的新手,我正在尝试在以下地址栏中输入地址
<input type="text" title="Street Address 1" name="billing[street][]" id="billing:street1" value="" class="input-text " autocomplete="address-line1">
所以我想做的就是在这个框中输入内容,以便我写
cy.get('#billing:street1').type('1322 the gulag archipelago')
但是我在cypress中遇到以下错误:
预计会找到'#billing:street1',但从未找到它。
所以我的问题是为什么这不起作用,因为我之前已经完成了这个.get,它已经工作了。
编辑: 可能是因为我需要使用'billing:street1'或类似的东西来指定:的含义。我特意尝试了这个并没有用。
提前谢谢你。
答案 0 :(得分:1)
有多种方法。
使用元素标签本身:
cy.get('input').type('1322 the gulag archipelago');
使用属性标签之一:
cy.get('[title="Street Address 1"'].type('1322 the gulag archipelago');
cy.get('[id="billing:street1"]).type('1322 the gulag archipelago');
cy.get('[class="input-text "]').type('1322 the gulag archipelago');
在表单元素内:
cy.get('[sample-form-id="ExampleAddressForm"]').within(() => {
cy.get('input').type('1322 the gulag archipelago');
});
如果这是页面上的第三个输入:
cy.get('input').then((inputs) => {
cy.get(inputs[3]).type('1322 the gulag archipelago');
});
答案 1 :(得分:0)
所以这就是我如何使用它我可以使用类似jQuery的命令来查询标题这实际上更加强大,因为id可以被更改,但最可能的是标题不会是命令
class RecordObject(models.Model):
status = models.CharField()
collection_date - models.CharField()
class RecordHistory(models.Model):
status = models.CharField()
collection_date - models.CharField()
工作正常,因为你几乎可以在cypress中执行jQuery操作。