Framework

 JS Cypress

Pros

  1. Python easier to learn. We have materials and courses.

Cons

  1. JS harder language to learn.

Cons

Pros

  1.  

TODO: Research both tools

Cypress vs Selenium

Feature Cypress Selenium

Local vs Heroku ENV

 Heroku ENV

Local

Pros

  1. Test can run in parallel (in theory)
  2. Easier Test Development

Cons

  1. Tests can run in parallel. Only if we setup multiple environments.
  2. Harder Test Development

Cons

  1. Setup all integrations. Not sure if possible to automate at all.

 

Pros

  1. Set all integrations. Only once

How to preset database.

  1. Use the admin to setup whatever you want.
  2. API For creating common stuff.
  3. CSV Implementation for the SDK
  4. Use seed data. 
  5. Use database fixture.

Visual Regression

Research tools for python selenium and crypress.

Roadmap

  1. Setup new github repo.
  2. Setup initial framework.
  3. Setup test styleguide and best practices.
  4. POC for admin SDK.
  5. Write some tests to proof the concepts.
  6. Setup CI for the tests. Setup Heroku env to run the tests against.
  7. Set proper selectors to the FE code base.
  8. Setup visual regression tests.

Learn map

  1. Revisit Git and Github
  2. Learn Python or JS
  3. ​Learn bout the FE codebase and how to set proper selectors there.

Blockers and Problems

  1. Every time we create or delete an event we need to restart the web dynos.
  2. Every time we create or delete an event we need to restart the celery dynos. - easy
  3. Tests are going to be slow and we have a GitHub Actions limit for minutes per month. - Setup VM for local runs.

deck

By Hack Bulgaria

deck

  • 932