赛普拉斯无法找到元素并提交

时间:2020-06-23 05:46:22

标签: cypress

我正在使用cypress登录页面,但是在提交时遇到错误。 在同一页面上有2个登录按钮。如何找到正确的登录按钮? 为了快速解决问题,我在最后一个命令后添加了此语法。但是我想知道如果同一页面包含相同名称和类型的登录按钮时该如何找到按钮。

.type('{enter}')

没有解决方法,错误

cy.submit() can only be called on a single form. Your subject contained 2 form elements.

网页元素:

<form action="/test/abc" method="get"><h6>Login with your own user</h6><input maxlength="9" name="ID" placeholder="testID" style="margin-right: 5px" value="ABC123"><input maxlength="255" name="ID_FullName" placeholder="Name" style="margin-right: 5px" value="Tester"><input name="EntID" placeholder="UPASS" style="margin-right: 5px" value="B12345"><select name="Role" style="margin-right: 5px"><option value="Acceptor">Acceptor</option><option value="Admin">Admin</option><option value="User">User</option></select><button autofocus="" type="submit">Login</button></form>

同一页面上的另一个元素,也是如此。

<form action="/test/abc" method="get"><select name="Srt" style="width: 100%; display: block; font-size: 25px"><option value="111233">fdsfdf - teset</option><option value="fdsfsd">rewr - 201005853W</option></select><button autofocus="" style="margin-top: 10px;  width:100%; display: block; height:80px; font-size: 20px" type="submit">Login</button></form>

我的脚本:

   cy.get('form').within(($form) => {
    cy.get('input[name="ID"]').type('A12345678')
    cy.get('input[name="ID_FullName"]').type('Accp John')
    cy.get('input[name="EntID"]').type('B56789')
    cy.get('[name="Role"]').select('Acceptor')
    cy.root().submit()
  })

0 个答案:

没有答案