Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test(protocol-designer): Cypress-Transfer-Platereader-Helper #17623

Conversation

alexjoel42
Copy link
Contributor

@alexjoel42 alexjoel42 commented Feb 28, 2025

Overview

  1. Add plate reader smoke test
  2. Add Transfer 1:1 test
  3. Add helper functions to test if we like that pattern to reduce work used in createNewFlex.cy.ts

Test Plan and Hands on Testing

Changelog

Changed some of the selectors to work with PD 8.4.3

Review requests

@y3rsh

Risk assessment

Going to likely need to look through selectors when we get to liquid class work because it will change fields. That being said, having automation that can be tweaked to liquid classes is helpful.

@alexjoel42 alexjoel42 requested a review from a team as a code owner February 28, 2025 23:17
@alexjoel42 alexjoel42 changed the title fixed all selectors Test(Protocol Designer)-Cypress-Transfer-Platereader-Helper Feb 28, 2025
Copy link

codecov bot commented Feb 28, 2025

Codecov Report

Attention: Patch coverage is 71.42857% with 4 lines in your changes missing coverage. Please review.

Project coverage is 18.62%. Comparing base (24399e0) to head (7da5b6e).

Files with missing lines Patch % Lines
protocol-designer/src/steplist/substepTimeline.ts 71.42% 4 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@                   Coverage Diff                   @@
##           chore_release-pd-8.4.3   #17623   +/-   ##
=======================================================
  Coverage                   18.62%   18.62%           
=======================================================
  Files                        2743     2743           
  Lines                      211801   211812   +11     
  Branches                     6534     6541    +7     
=======================================================
+ Hits                        39442    39449    +7     
- Misses                     172359   172363    +4     
Flag Coverage Δ
protocol-designer 18.62% <71.42%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
protocol-designer/src/steplist/substepTimeline.ts 35.13% <71.42%> (+0.97%) ⬆️
🚀 New features to boost your workflow:
  • Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@koji koji changed the title Test(Protocol Designer)-Cypress-Transfer-Platereader-Helper test(protocol-designer): Cypress-Transfer-Platereader-Helper Feb 28, 2025
@koji
Copy link
Contributor

koji commented Feb 28, 2025

@alexjoel42
modified the title a little bit

@alexjoel42 alexjoel42 requested a review from y3rsh March 3, 2025 16:27
Copy link
Member

@y3rsh y3rsh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As you are getting this working, make sure to add cy.log in functions with even a little complexity as well as parameterized functions so troubleshooting is easier.

Also, do not add any more scope to this PR. I would make small PRs that create one composite step at a time so that they may be easily reviewed.

Just noticed another issue to fix in this PR when troubleshooting the below error.

  • We have 4 describe with the name The Redesigned Create Protocol Landing Page - rename them distincly
  • We have 4 it with the same name content and step 1 flow works - rename them distinctly

Once my PR is merged and we have distinct names on each describe and it, we can see which test is causing this error!

[protocol-designer-tests]   The Redesigned Create Protocol Landing Page
[protocol-designer-tests]     1) content and step 1 flow works
[protocol-designer-tests]
[protocol-designer-tests]
[protocol-designer-tests]   0 passing (26s)
[protocol-designer-tests]   1 failing
[protocol-designer-tests]
[protocol-designer-tests]   1) The Redesigned Create Protocol Landing Page
[protocol-designer-tests]        content and step 1 flow works:
[protocol-designer-tests]      Error: The following error originated from your application code, not from Cypress.
[protocol-designer-tests]
[protocol-designer-tests]   > Uncaught Error: expected to find cutoutId from addressableAreaName undefined but could not
[protocol-designer-tests]
[protocol-designer-tests] When Cypress detects uncaught errors originating from your application it will automatically fail the current test.
[protocol-designer-tests]
[protocol-designer-tests] This behavior is configurable, and you can choose to turn this off by listening to the `uncaught:exception` event.
[protocol-designer-tests]
[protocol-designer-tests] https://on.cypress.io/uncaught-exception-from-application
[protocol-designer-tests]     at <unknown> (http://localhost:5178/src/utils/index.ts:118:5)

@jerader
Copy link
Collaborator

jerader commented Mar 5, 2025

Leaving a comment here to explain the substepTimeline fix that was made:

With the new airGapInPlace command that was added recently, we only added support for it occurring on top of a waste chute/trash bin but forgot that it can also occur on top of a labware's well. The changes made were to account for it occurring over a labware well.

@alexjoel42 alexjoel42 closed this Mar 6, 2025
@alexjoel42 alexjoel42 deleted the Test(PD)-Cypress-Transfer-Platereader-Helper branch March 6, 2025 22:43
alexjoel42 added a commit that referenced this pull request Mar 7, 2025
#17677)

This is coppied over from
#17623 because my branch name
had parentheses.

# Overview

1. Add plate reader smoke test
2. Add Transfer 1:1 test
3. Add helper functions to test if we like that pattern to reduce work
used in createNewFlex.cy.ts
## Test Plan and Hands on Testing

## Changelog
Added test coverage for transfer. Might need to be refactored once we work on liquid classes. Will likely cause some issues until Jethary's PR is pulled in

## Review requests
@y3rsh 

## Risk assessment
Going to likely need to look through selectors when we get to liquid
class work because it will change fields. That being said, having
automation that can be tweaked to liquid classes is helpful.

---------

Co-authored-by: Josh McVey <josh.mcvey@opentrons.com>
Co-authored-by: Jethary <jethary@opentrons.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants