-
Notifications
You must be signed in to change notification settings - Fork 16
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
🧪 Add end-to-end tests for navigation #4013
Conversation
Signed-off-by: Kristofer Rye <[email protected]>
Signed-off-by: Kristofer Rye <[email protected]>
Signed-off-by: Kristofer Rye <[email protected]>
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## master #4013 +/- ##
======================================
Coverage 8.59% 8.59%
======================================
Files 298 298
Lines 5097 5097
Branches 1383 1383
======================================
Hits 438 438
Misses 4636 4636
Partials 23 23 |
I think we should tweak the Detox tests to not reinstall the app before every test. I don’t remember why I did that originally. |
Anyway, ideas:
|
Also, instead of deleting and reinstalling the app before each individual test, (which is overkill) just launch a new instance of the app. Signed-off-by: Kristofer Rye <[email protected]>
I have taken care of the relaunching behavior in 6dd0d1f. |
Signed-off-by: Kristofer Rye <[email protected]>
Signed-off-by: Kristofer Rye <[email protected]>
So I can't find my It sounds like I have to manually propagate that through to the appropriate element. |
Signed-off-by: Kristofer Rye <[email protected]>
Signed-off-by: Kristofer Rye <[email protected]>
Since screen-streaming is actually just a TabNavigator, and I can't quite figure out how to set the testID on it, I'm going to ignore it and see if I can get a passing build Signed-off-by: Kristofer Rye <[email protected]>
Signed-off-by: Kristofer Rye <[email protected]>
Hey, a passing build! |
List of views I think we could add E2E tests to. Feel free to edit.Home
Menus
SIS
Building hours
Calendar
Directory
Streaming Media
News
Map
Important Contacts
Transit
Dictionary
Student Orgs
Moodle
Report a Problem
stoPrint
Safety Concerns
Settings
Smaller FishDeveloper
Integrated but not visible
|
I am doing this primarily to get the up-to-date GitHub Actions workflows and such, but also the changes that have been made to various views. Signed-off-by: Kristofer Rye <[email protected]>
Signed-off-by: Kristofer Rye <[email protected]>
Signed-off-by: Kristofer Rye <[email protected]>
I realize these have been sitting in this PR but probably can be merged in as they are written. Is there anything besides resolving conflicts that we need to do to get these in? |
Riffing from @drewvolz's comment, I think that once we get Detox working again this should be only a small amount of work to merge! |
* master: (2979 commits) update Podfile.lock update theme import and change names use standard "black" color switch codecov from the bash uploader to their action add new "dependency review" workflow add whitespace to "check" workflow jobs make the Prettier job's ID match its name upgrade linux runners to ubuntu-22.04 centralize global versions for languages and Xcode auto-cancel in-progress jobs on subsequent commit to the same branch add distributionSha256Sum to gradle-wrapper.properties implement auto-cache-cleanup workflow Bump react-native-paper from 4.12.4 to 5.1.4 Bump babel-jest from 29.3.1 to 29.4.0 Bump @jest/globals from 29.3.1 to 29.4.0 Bump @typescript-eslint/parser from 5.48.2 to 5.49.0 Bump react-native-network-logger from 1.13.0 to 1.14.0 Bump @typescript-eslint/eslint-plugin from 5.48.2 to 5.49.0 Bump jest from 29.3.1 to 29.4.0 Bump @react-native-community/datetimepicker from 6.7.2 to 6.7.3 ...
Working on this part next… |
ready! |
8955e25
to
1f553a3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can't ✅ this but I love it! This certainly seems to be going in the right direction.
As to overall strategy, I do think it's worth us exploring either mocking or full parametrization of things so that we have more control over data we expect to see in the app from the test suite and so that we can verify more tightly. However, I think we should do that in a separate MR — I think that's part of the larger infrastructurification push.
I fully agree! And I agree about that being a separate effort - we'll get a lot of value just from having the assurance that every view is reachable by navigating the app, I think! |
I like testing.
Testing is good.
"We should test more stuff" has been a long-standing thing I've said, but here I'm actually trying my hand at e2e testing.
I'm Not Sure™ if this affects coverage at all. It'd be nice if it did, but I don't think Detox instruments that yet, or if they do, I don't think we're uploading that. So, I guess I just have to give this a try.
list of views to test moved to #6788