Q:

Cypress click element by ID / XPATH / Name?

I want to click on an element by XPATH / ID and not the default cypress locator, is it possible?
In selenium I can use find element by XPATH for example: 
d.findElement(By.id("category")).click();

In Cypress it's like: 
cy.get('#hdtb-msb-vis > :nth-child(3) > .category').click()

Can I click by ID? 
(It looks better in selenium!)
d.findElement(By.id("category")).click();

VS
cy.get('#hdtb-msb-vis > :nth-child(3) > .category').click()

A:

In Cypress, it works like this:
cy.get('button[id="category"]').click()

Notice that I just used button as an example here, you should replace that with the label of your element: div, select, textarea, etc...

A:

I think, it is possible by adding a plug-in as suggested in Cypress website, please refer the following link https://docs.cypress.io/plugins/#content. If you refer the custom command section you could see cypress-xpath which takes you to following github link
  https://github.com/cypress-io/cypress-xpath
npm install -D cypress-xpath

Then include in your project's cypress/support/index.js
require('cypress-xpath')

Sample usage given below:
it('finds list items', () => {
  cy.xpath('//ul[@class="todo-list"]//li')
    .should('have.length', 3)
})

Please try after installing the plug-in and updating the support/index.js file.

