-
Notifications
You must be signed in to change notification settings - Fork 24.4k
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 RNTester-E2E: tests for iOS and Android via Appium, WDIO and Jest #36267
Conversation
packages/rn-tester-e2e/test/screenObjects/buttonComponent.screen.js
Outdated
Show resolved
Hide resolved
Base commit: e64756a |
0db60ac
to
969793b
Compare
969793b
to
ec894f1
Compare
654bbb7
to
a66f358
Compare
a03d473
to
15a5d0f
Compare
16996ad
to
00932ab
Compare
@cortinico has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
packages/rn-tester-e2e/tests/screens/components/buttonComponent.screen.js
Outdated
Show resolved
Hide resolved
packages/rn-tester-e2e/tests/screens/components/buttonComponent.screen.js
Outdated
Show resolved
Hide resolved
packages/rn-tester-e2e/tests/specs/components/buttonComponentScreen.test.js
Show resolved
Hide resolved
a026fbb
to
7985e5c
Compare
@cortinico has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
This pull request has been reverted by dd1c8a6. |
@cortinico merged this pull request in 3c196fb. |
This pull request was successfully merged by @kelset in 3c6dbec. When will my fix make it into a release? | Upcoming Releases |
@cortinico merged this pull request in 3c6dbec. |
Hey 👋 WebdriverIO maintainer here! It's excited to see RN using WebdriverIO for their e2e testing. Please don't hesitate to reach out to me if there are any questions or issues coming up. Looking at the code changes I was wondering why you have decided to use Jest as oppose to the WebdriverIO testrunner? The testrunner was designed to allow people to scale their e2e tests and provide good reporting and plugin capabilities. For example it could simplify setting up Appium using the Any feedback would be greatly appreciated and helps making WebdriverIO better. Cheers! |
…facebook#36267) Summary: The motivation is to create an E2E testing solution for the RNTester app that can be used to flag when things break and the release crew can use to validate more of the codebase ahead of a release. This first PR wants to just showcase the main flow (how tests are made, where the E2E folder lives, how it's used by CircleCI) and then we can build on top of it with subsequent PRs, with the help of an umbrella issue to get the community involved in making more tests! This work is being done cooperation with Callstack developers (mateuszm22 , adzironman, and others) - reason why the branch [lives in a fork](https://github.com/mateuszm22/react-native/tree/k%2Bm/new-rn-tester-E2E). ### [Read the RFC for more details ](react-native-community/discussions-and-proposals#684) ### Extra notes We are still on WebDriverIO 7 because during the exploratory phase, WDIO was a bit problematic and the workarounds needed to make it work don't seem very nice - see this PR: kelset/react-native-e2e-jest-appium-webdriverio#4 --- this will be revisited in the future, once there's a better path for upgrading. ### Things that will be handled as follow up work * upgrade to WDIO 8 * [an automated yarn run-e2e-test script](facebook#36267 (comment)) * [a small refactoring into a js script](facebook#36267 (comment)) ## Changelog: [INTERNAL] [ADDED] - Added first working configuration for e2e testing Pull Request resolved: facebook#36267 Test Plan: You can play with this locally by [follow the readme](https://github.com/mateuszm22/react-native/blob/k+m/new-rn-tester-E2E/packages/rn-tester-e2e/README.md). CircleCI jobs will be added. Reviewed By: cipolleschi Differential Revision: D46225747 Pulled By: cortinico fbshipit-source-id: e5428c439afd84ed3dd219d6ada538263120d7c6
…facebook#36267) Summary: The motivation is to create an E2E testing solution for the RNTester app that can be used to flag when things break and the release crew can use to validate more of the codebase ahead of a release. This first PR wants to just showcase the main flow (how tests are made, where the E2E folder lives, how it's used by CircleCI) and then we can build on top of it with subsequent PRs, with the help of an umbrella issue to get the community involved in making more tests! This work is being done cooperation with Callstack developers (mateuszm22 , adzironman, and others) - reason why the branch [lives in a fork](https://github.com/mateuszm22/react-native/tree/k%2Bm/new-rn-tester-E2E). ### [Read the RFC for more details ](react-native-community/discussions-and-proposals#684) ### Extra notes We are still on WebDriverIO 7 because during the exploratory phase, WDIO was a bit problematic and the workarounds needed to make it work don't seem very nice - see this PR: kelset/react-native-e2e-jest-appium-webdriverio#4 --- this will be revisited in the future, once there's a better path for upgrading. ### Things that will be handled as follow up work * upgrade to WDIO 8 * [an automated yarn run-e2e-test script](facebook#36267 (comment)) * [a small refactoring into a js script](facebook#36267 (comment)) ## Changelog: [INTERNAL] [ADDED] - Added first working configuration for e2e testing Pull Request resolved: facebook#36267 Test Plan: You can play with this locally by [follow the readme](https://github.com/mateuszm22/react-native/blob/k+m/new-rn-tester-E2E/packages/rn-tester-e2e/README.md). CircleCI jobs will be added. Reviewed By: cipolleschi Differential Revision: D47763012 Pulled By: cortinico fbshipit-source-id: 6eb9674182b8ee97aea4784158c69bf017f379e5
…facebook#36267) Summary: The motivation is to create an E2E testing solution for the RNTester app that can be used to flag when things break and the release crew can use to validate more of the codebase ahead of a release. This first PR wants to just showcase the main flow (how tests are made, where the E2E folder lives, how it's used by CircleCI) and then we can build on top of it with subsequent PRs, with the help of an umbrella issue to get the community involved in making more tests! This work is being done cooperation with Callstack developers (mateuszm22 , adzironman, and others) - reason why the branch [lives in a fork](https://github.com/mateuszm22/react-native/tree/k%2Bm/new-rn-tester-E2E). ### [Read the RFC for more details ](react-native-community/discussions-and-proposals#684) ### Extra notes We are still on WebDriverIO 7 because during the exploratory phase, WDIO was a bit problematic and the workarounds needed to make it work don't seem very nice - see this PR: kelset/react-native-e2e-jest-appium-webdriverio#4 --- this will be revisited in the future, once there's a better path for upgrading. ### Things that will be handled as follow up work * upgrade to WDIO 8 * [an automated yarn run-e2e-test script](facebook#36267 (comment)) * [a small refactoring into a js script](facebook#36267 (comment)) ## Changelog: [INTERNAL] [ADDED] - Added first working configuration for e2e testing Pull Request resolved: facebook#36267 Test Plan: You can play with this locally by [follow the readme](https://github.com/mateuszm22/react-native/blob/k+m/new-rn-tester-E2E/packages/rn-tester-e2e/README.md). CircleCI jobs will be added. Reviewed By: cipolleschi Differential Revision: D46225747 Pulled By: cortinico fbshipit-source-id: e5428c439afd84ed3dd219d6ada538263120d7c6
…facebook#36267) Summary: The motivation is to create an E2E testing solution for the RNTester app that can be used to flag when things break and the release crew can use to validate more of the codebase ahead of a release. This first PR wants to just showcase the main flow (how tests are made, where the E2E folder lives, how it's used by CircleCI) and then we can build on top of it with subsequent PRs, with the help of an umbrella issue to get the community involved in making more tests! This work is being done cooperation with Callstack developers (mateuszm22 , adzironman, and others) - reason why the branch [lives in a fork](https://github.com/mateuszm22/react-native/tree/k%2Bm/new-rn-tester-E2E). ### [Read the RFC for more details ](react-native-community/discussions-and-proposals#684) ### Extra notes We are still on WebDriverIO 7 because during the exploratory phase, WDIO was a bit problematic and the workarounds needed to make it work don't seem very nice - see this PR: kelset/react-native-e2e-jest-appium-webdriverio#4 --- this will be revisited in the future, once there's a better path for upgrading. ### Things that will be handled as follow up work * upgrade to WDIO 8 * [an automated yarn run-e2e-test script](facebook#36267 (comment)) * [a small refactoring into a js script](facebook#36267 (comment)) ## Changelog: [INTERNAL] [ADDED] - Added first working configuration for e2e testing Pull Request resolved: facebook#36267 Test Plan: You can play with this locally by [follow the readme](https://github.com/mateuszm22/react-native/blob/k+m/new-rn-tester-E2E/packages/rn-tester-e2e/README.md). CircleCI jobs will be added. Reviewed By: cipolleschi Differential Revision: D47763012 Pulled By: cortinico fbshipit-source-id: 6eb9674182b8ee97aea4784158c69bf017f379e5
…facebook#36267) Summary: The motivation is to create an E2E testing solution for the RNTester app that can be used to flag when things break and the release crew can use to validate more of the codebase ahead of a release. This first PR wants to just showcase the main flow (how tests are made, where the E2E folder lives, how it's used by CircleCI) and then we can build on top of it with subsequent PRs, with the help of an umbrella issue to get the community involved in making more tests! This work is being done cooperation with Callstack developers (mateuszm22 , adzironman, and others) - reason why the branch [lives in a fork](https://github.com/mateuszm22/react-native/tree/k%2Bm/new-rn-tester-E2E). ### [Read the RFC for more details ](react-native-community/discussions-and-proposals#684) ### Extra notes We are still on WebDriverIO 7 because during the exploratory phase, WDIO was a bit problematic and the workarounds needed to make it work don't seem very nice - see this PR: kelset/react-native-e2e-jest-appium-webdriverio#4 --- this will be revisited in the future, once there's a better path for upgrading. ### Things that will be handled as follow up work * upgrade to WDIO 8 * [an automated yarn run-e2e-test script](facebook#36267 (comment)) * [a small refactoring into a js script](facebook#36267 (comment)) ## Changelog: [INTERNAL] [ADDED] - Added first working configuration for e2e testing Pull Request resolved: facebook#36267 Test Plan: You can play with this locally by [follow the readme](https://github.com/mateuszm22/react-native/blob/k+m/new-rn-tester-E2E/packages/rn-tester-e2e/README.md). CircleCI jobs will be added. Reviewed By: cipolleschi Differential Revision: D46225747 Pulled By: cortinico fbshipit-source-id: e5428c439afd84ed3dd219d6ada538263120d7c6
…facebook#36267) Summary: The motivation is to create an E2E testing solution for the RNTester app that can be used to flag when things break and the release crew can use to validate more of the codebase ahead of a release. This first PR wants to just showcase the main flow (how tests are made, where the E2E folder lives, how it's used by CircleCI) and then we can build on top of it with subsequent PRs, with the help of an umbrella issue to get the community involved in making more tests! This work is being done cooperation with Callstack developers (mateuszm22 , adzironman, and others) - reason why the branch [lives in a fork](https://github.com/mateuszm22/react-native/tree/k%2Bm/new-rn-tester-E2E). ### [Read the RFC for more details ](react-native-community/discussions-and-proposals#684) ### Extra notes We are still on WebDriverIO 7 because during the exploratory phase, WDIO was a bit problematic and the workarounds needed to make it work don't seem very nice - see this PR: kelset/react-native-e2e-jest-appium-webdriverio#4 --- this will be revisited in the future, once there's a better path for upgrading. ### Things that will be handled as follow up work * upgrade to WDIO 8 * [an automated yarn run-e2e-test script](facebook#36267 (comment)) * [a small refactoring into a js script](facebook#36267 (comment)) ## Changelog: [INTERNAL] [ADDED] - Added first working configuration for e2e testing Pull Request resolved: facebook#36267 Test Plan: You can play with this locally by [follow the readme](https://github.com/mateuszm22/react-native/blob/k+m/new-rn-tester-E2E/packages/rn-tester-e2e/README.md). CircleCI jobs will be added. Reviewed By: cipolleschi Differential Revision: D47763012 Pulled By: cortinico fbshipit-source-id: 6eb9674182b8ee97aea4784158c69bf017f379e5
Summary: This PR is small cleanup in `.circleci/config.yml` file. Request here: #36267 (comment) ## Changelog: [INTERNAL] [CHANGED] - move script checking Appium server status to separate file Pull Request resolved: #38692 Test Plan: CI Green ✅ Reviewed By: NickGerleman Differential Revision: D47926222 Pulled By: ryancat fbshipit-source-id: eeff338ca018549762dce46a744b80f659b4bd5d
They @christian-bromann - thanks for your comment! We'll surely reach out if we need help 🤗 About your question, the tl;dr is that using Jest was a strict requirement, you can read more in the RFC |
Summary: This PR is small cleanup in scripts in `rn-tester-e2e` package, it creates unified script so that we can easily pass platform as an argument. Context: #36267 (comment) ## Changelog: [INTERNAL] [CHANGED] - Unify `test-e2e` command in `rn-tester-e2e` package Pull Request resolved: #38701 Test Plan: CI Green ✅ Reviewed By: NickGerleman, cipolleschi Differential Revision: D47949821 Pulled By: cortinico fbshipit-source-id: 90bbc96281e89dec505999ff5e51db7ca78da6dc
Summary:
The motivation is to create an E2E testing solution for the RNTester app that can be used to flag when things break and the release crew can use to validate more of the codebase ahead of a release.
This first PR wants to just showcase the main flow (how tests are made, where the E2E folder lives, how it's used by CircleCI) and then we can build on top of it with subsequent PRs, with the help of an umbrella issue to get the community involved in making more tests!
This work is being done cooperation with Callstack developers (@mateuszm22 , @adzironman, and others) - reason why the branch lives in a fork.
Read the RFC for more details
Extra notes
We are still on WebDriverIO 7 because during the exploratory phase, WDIO was a bit problematic and the workarounds needed to make it work don't seem very nice - see this PR: kelset/react-native-e2e-jest-appium-webdriverio#4 --- this will be revisited in the future, once there's a better path for upgrading.
Things that will be handled as follow up work
Changelog:
[INTERNAL] [ADDED] - Added first working configuration for e2e testing
Test Plan:
You can play with this locally by follow the readme.
CircleCI jobs will be added.