Skip to content

09 14 2022 Meeting

Adam De Fouw edited this page Sep 14, 2022 · 12 revisions

Meeting Minutes > 09/14/2022 Meeting

Agenda Items

  • REDCap Con - Adam D. not attending this year

  • Updates to REDCap Cypress Test Framework (RCTF) & Automated Testing Subcommittee (ATS)

  • NEW: GitHub Pages Documentation using Documentation.js / JSDocs: https://aldefouw.github.io/redcap_cypress/

    • Step Definition Documentation Page will help us to know what definitions are available on v11.1.5 to this point
    • NEW Step Definition Creation Process
      1. Determine section it belongs in (what file / subfolder in cypress/step_definitions)
      2. Determine scope it has (in general, let's strive to make our step definitions do one thing well)
      3. Create "Issue" on Github repo ( https://github.com/aldefouw/redcap_cypress/issues )
      4. Write the code for Step Definition, including documentation of what the method should do (example of documentation): https://github.com/aldefouw/redcap_cypress/blob/v11.1.5/cypress/support/step_definitions/interactions.js#L4-L13
      5. Run npm run docs:build command to update the /docs/index.html page
      6. Push the code to your fork.
      7. Submit a Pull Request so it can be merged into base repository for global usage.
  • IMPROVED: Performance of Login Process

  • NEW FEATURE: Ability to disable INITIAL DB seeding in Development

  "mysql": {
    "host": "127.0.0.1",
    "path": "/usr/local/opt/[email protected]/bin/mysql",
    "port": "3400",
    "db_name": "redcap",
    "db_user": "root",
    "db_pass": "root",
    "skip_db_seed": true
  }
  • New "skip_db_seed" property available within "mysql" in cypress.env.json.

  • ONLY works in Development mode - each feature test CircleCI will always run from fresh reset DB state

  • Intended to speed up development if tests are constantly rerunning and state setup is not particularly important

  • Be mindful that database state is carried over on subsequent test runs if you do not reset

  • If test assertions are dependent upon past steps (most are in some way!) - your tests might fail or pass unexpectedly

  • "With great power comes great responsibility."

  • Translation: If this feature is enabled, it's up to you to figure out DB state. You've been warned =)

  • If feature is enabled and want to reset DB state without disabling this feature:

    • Delete /test_db/initial_db_seed.lock and refresh your tests ... database state will be reset once.
    • Subsequent runs will skip initial seeding
  • PROPOSED: Making Scenarios Clearer

Progress Reports

  • Updates on tests in progress. What do you need help on?
Clone this wiki locally