> For the complete documentation index, see [llms.txt](https://furkans-organization-1.gitbook.io/cypress-notlari/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://furkans-organization-1.gitbook.io/cypress-notlari/8.-cypress-aliases.md).

# 8. Cypress Aliases

Cypress aliases, birden fazla kullanıma sahip önemli bir bileşendir. Bu kullanımlar listelenmiştir

### Sharing Context

```javascript
describe('element', () => {
  beforeEach(() => {
    cy.wrap("eleone").as("x")
  })
  
  it('aliases properties',() => {
     expect(this.x).to.eq(' eleone ')
     expect(this.y).to.eq(' eleone ')
   })
})
```

### Elements

DOM üzerindeki elementleri get ile bulduktan sonra bir alias atayarak reusable hale getirebiliriz.

```javascript
// alias td in tr
cy.get('tr').find('td').as('cols')
cy.get('@cols').first().click()
```

### Routes

```javascript
cy.intercept('POST', '/users', { id: 54 }).as('u')

cy.get('#btn').click()

cy.wait('@u').then(({ request }) => {
//assertion
 expect(request.body).to.have.property('name', 'User')
})

cy.contains('User added')
```

### Requests

```javascript
cy.request('https://jsonplaceholder.cypress.io/comments').as('c')

// other implementations if any
cy.get('@c').should((response) => {
  if (response.status === 404) {
    // assertion
     expect(response).to.have.property('duration')
  } else {
   // do something else
  }
})
```
