我正在为无线电编写一个柏树测试,以检查它是私人的还是公共的。
网页部分
<div _ngcontent-c6="" class="form-check form-check-inline mb-1">`
<input _ngcontent-c6="" class="form-check-input ng-untouched ng-pristine ng-valid" formcontrolname="projectStatus" id="private" name="projectStatus" type="radio" ng-reflect-name="projectStatus" ng-reflect-form-control-name="projectStatus" ng-reflect-value="false" ng-reflect-model="false">
<label _ngcontent-c6="" class="form-check-label" for="private">Private</label>
</div>
柏树测试
cy.get('#private').should('have.attr', 'checked', 'true') // Not working
cy.get('[type="radio"]').should('have.attr', 'ng-reflect-value', 'false') // Not Working
部分问题是当我控制台时,我看到消息<input#private.form-check-input.ng-untouched.ng-pristine.ng-valid>
我找不到属性ng-reflect-checked
有人对棱角形制成的单选按钮进行了柏树测试吗?
这也是一个解决方案:
cy.get('for=["private"]')
.parent()
.find('input')
.should('be.checked')
这样,您就不需要输入元素的额外属性。
好吧,我在输入中添加了一个值属性
<input _ngcontent-c6="" class="form-check-input ng-untouched ng-pristine ng-valid" formcontrolname="projectStatus" id="private" name="projectStatus" type="radio" ng-reflect-name="projectStatus" ng-reflect-form-control-name="projectStatus" ng-reflect-value="false" ng-reflect-model="false" **value="false"**>
柏树代码
cy.get('#private').should('have.attr', 'value', 'false')
我希望🤞有人有更好的解决方案。