Home > front end >  How can I print Cypress base Url in the `Git bash CLI console`
How can I print Cypress base Url in the `Git bash CLI console`

Time:11-13

How can I print Cypress base Url in the Git bash CLI console while running the Cypress test ? Could someone please advise ?

CodePudding user response:

When running headless, the browser logs don't show in the terminal, but those from the Cypress node process (aka cy.task()) do show up.

I assume the baseUrl is changing during the test, here is an example that does that and logs the current value using a task.

The configured value is http://localhost:3000, the test changes it to http://localhost:3001.

cypress.config.js

const { defineConfig } = require('cypress')

module.exports = defineConfig({
  e2e: {
    setupNodeEvents(on, config) {

      console.log('Printing baseUrl - during setup', config.baseUrl)

      on('task', {
        logBaseUrl(baseUrl) {
          console.log('Printing baseUrl - from task', baseUrl)
          return null
        }
      })
    },
    baseUrl: 'http://localhost:3000'
  },
})

test


it('logs baseUrl to the terminal in run mode', () => {

  console.log('Printing baseUrl - directly from test', Cypress.config('baseUrl'))  // no show

  Cypress.config('baseUrl', 'http://localhost:3001')                     
  
  cy.task('logBaseUrl', Cypress.config('baseUrl'))
})

terminal

Printing baseUrl - during setup http://localhost:3000

====================================================================================================
  Running:  log-baseurl.cy.js                                                               (1 of 1)

Printing baseUrl - from task http://localhost:3001
  √ logs baseUrl to the terminal in run mode (73ms)

  1 passing (115ms)

  (Results)
  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        1                                                                                │
  │ Passing:      1                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     0 seconds                                                                        │
  │ Spec Ran:     log-baseurl.cy.js                                                                │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘
====================================================================================================

  (Run Finished)

       Spec                                              Tests  Passing  Failing  Pending  Skipped
  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ √  log-baseurl.cy.js                        108ms        1        1        -        -        - │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘
    √  All specs passed!                        108ms        1        1        -        -        -

Done in 18.49s.

CodePudding user response:

You can use a nodejs command console.log(Cypress.config().baseUrl).

That does not require Git Bash though, only nodejs installed on Your Windows.

Or you can add in your tests cy.config().baseUrl.

  • Related