Getting Started with CircleCi and Cypress

Marie Drake, Principal Test Automation Engineer @ News UK

 

 

Thank you Billy and Xpertise Recruitment!

Agenda

  • What is Continuous Integration?

  • Why Continuous Integration?

  • What is CircleCI?

  • Cypress Examples

    • Cypress orb

    • Attaching artifacts to your test run

    • Cypress docker image

  • Guidelines/Best Practices

"Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible" - Martin Fowler

 

What is Continuous Integration?

https://martinfowler.com/articles/continuousIntegration.html

📖 The Phoenix Project

📖 The Unicorn Project

Why Continuous Integration?

  • Avoids the problem "Hey it works on my machine, it should work on your machine too!"

  • Provides a faster feedback loop

  • Promotes better visibility and allows team to fix bugs earlier on the process

Why Continuous Integration?

  • Easily test small changes

  • Enables faster deployment 

  • Enables Continuous Delivery and Continuous Deployment

What is CircleCI?

Getting Started

  1. Setup Github

  2. Push some changes to a branch

  3. Go to circleci.com

  4. Read documentation

  5. Create .circleci/config.yml

  6. Push new changes to branch

  7. CircleCI runs the job

We'll look at examples of course 😅

version: 2.1
orbs:
  cypress: cypress-io/cypress@1.25.0
workflows:
  build:
    jobs:
      - cypress/run:
          name: Run E2E tests

Let's look at more examples

Guidelines/Best Practices

  • Start small 🙂
  • Integrate fastest tests as early as possible
  • Don't jump to CD right ahead!
  • Run different tests in parallel
  • Make test reports visible
  • Integrate to communication channels such as Slack
  • Isolate flaky tests ASAP
  • Get whole team's involvement

Resources

Questions?

Marie Drake, Principal Test Automation Engineer @ News UK

 

 

Getting Started with CircleCI and Cypress

By Marie Cruz

Getting Started with CircleCI and Cypress

In this lunch and learn session, we'll look at how we can integrate our Cypress tests to a CI/CD pipeline using CircleCI

  • 2,377