← Back to library
Cypressassertionsintermediatev10+

Assert element is disabled or enabled

Check the disabled state of a button or input — commonly used to validate form readiness.

1it('submit button reflects form validity', () => {
2  cy.visit('/register');
3
4  // Assert disabled before the form is filled
5  cy.get('[type="submit"]').should('be.disabled');
6
7  cy.get('[name="email"]').type('qa@example.com');
8  cy.get('[name="password"]').type('Str0ng!Pass');
9
10  // Once valid, the button should become interactive
11  cy.get('[type="submit"]').should('not.be.disabled');
12
13  // Assert a read-only field is not editable
14  cy.get('[name="plan"]').should('be.disabled');
15});
#disabled#enabled#be.disabled#form validation#button state