Skip to content

Commit a1284c8

Browse files
authored
combine the different testing sequence sections (#1029)
1 parent 9f1c8f5 commit a1284c8

File tree

1 file changed

+56
-68
lines changed

1 file changed

+56
-68
lines changed

docs/guide-release-testing.md

Lines changed: 56 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,10 @@ If any of those prerequisites is not met, the script should output a proper erro
8686
8787
If you need to build React Native from source, you can skip the `-c` parameter. By not passing the GitHub token, the script falls back to the previous flow, building everything locally.
8888

89-
## Dimensions to test (RN >= 0.79)
89+
## Testing Sequence (RN >= 0.79)
90+
91+
> [!Tip]
92+
> Make sure the remote assets are built on your release branch to use the `-c` option (highly recommended)
9093
9194
> [!Note]
9295
> On React Native **`< 0.81`** `test-release-local` is called `test-e2e-local`
@@ -97,76 +100,127 @@ Here are the 4 dimensions we cover in manual testing:
97100

98101
```bash
99102
yarn test-release-local -t "RNTester" -p "iOS" -c $GITHUB_TOKEN
103+
# verify tests "what to test"
104+
# kill metro
105+
xcrun simctl uninstall booted com.meta.RNTester.localDevelopment # delete RNTester from your iOS simulator
100106
```
101107

102108
**2. RNTester + Android:**
103109

104110
```bash
105111
yarn test-release-local -t "RNTester" -p "Android" -c $GITHUB_TOKEN
112+
# verify tests "what to test"
113+
# kill metro
114+
adb uninstall com.facebook.react.uiapp # delete RNTester from your Android emulator
106115
```
107116

108117
**3. RNTestProject + iOS:**
109118

110119
```bash
111120
yarn test-release-local -t "RNTestProject" -p "iOS" -c $GITHUB_TOKEN
121+
# verify tests "what to test"
122+
# kill metro
123+
xcrun simctl uninstall booted org.reactjs.native.example.RNTestProject # delete RNTestProject from your iOS simulator
112124
```
113125

114126
**4. RNTestProject + Android**
115127

116128
```bash
117129
yarn test-release-local -t "RNTestProject" -p "Android" -c $GITHUB_TOKEN
130+
# verify tests "what to test"
131+
# kill metro
132+
adb uninstall com.rntestproject # delete RNTestProject from your Android emulator
118133
```
119134

120-
## Dimensions to test (RN <= 0.78)
135+
## Testing Sequence (RN <= 0.78)
136+
137+
> [!Tip]
138+
> Make sure the remote assets are built on your release branch to use the `-c` option (highly recommended)
139+
140+
<details>
141+
<summary>ℹ️ For (<b><code>RN < 0.71</code></b>) ℹ️<br/></summary>
142+
You need to use the interactive script run you through the different variants below.
143+
This script will ask you to select which platform and which project you want to test, and then to execute a series of extra steps during the process. Bear in mind, when testing RNTester on Android, you need to start the Android emulator ahead of time or it will fail.
144+
145+
```bash
146+
./scripts/test-manual-e2e.sh
147+
```
148+
149+
</details>
150+
121151

122152
Here are the 8 dimensions we cover in manual testing:
123153

124154
**1. RNTester + iOS + Hermes:**
125155

126156
```bash
127157
yarn test-e2e-local -t "RNTester" -p "iOS" -h true -c $GITHUB_TOKEN
158+
# verify tests "what to test"
159+
# kill metro
160+
xcrun simctl uninstall booted com.meta.RNTester.localDevelopment # delete RNTester from your iOS simulator
128161
```
129162

130163
**2. RNTester + iOS + JSC:**
131164

132165
```bash
133166
yarn test-e2e-local -t "RNTester" -p "iOS" -h false -c $GITHUB_TOKEN
167+
# verify tests "what to test"
168+
# kill metro
169+
xcrun simctl uninstall booted com.meta.RNTester.localDevelopment # delete RNTester from your iOS simulator
134170
```
135171

136172
**3. RNTester + Android + Hermes:**
137173

138174
```bash
139175
yarn test-e2e-local -t "RNTester" -p "Android" -h true -c $GITHUB_TOKEN
176+
# verify tests "what to test"
177+
# kill metro
178+
adb uninstall com.facebook.react.uiapp # delete RNTester from your Android emulator
140179
```
141180

142181
**4. RNTester + Android + JSC:**
143182

144183
```bash
145184
yarn test-e2e-local -t "RNTester" -p "Android" -h false -c $GITHUB_TOKEN
185+
# verify tests "what to test"
186+
# kill metro
187+
adb uninstall com.facebook.react.uiapp # delete RNTester from your Android emulator
146188
```
147189

148190
**5. RNTestProject + iOS + Hermes:**
149191

150192
```bash
151193
yarn test-e2e-local -t "RNTestProject" -p "iOS" -h true -c $GITHUB_TOKEN
194+
# verify tests "what to test"
195+
# kill metro
196+
xcrun simctl uninstall booted org.reactjs.native.example.RNTestProject # delete RNTestProject from your iOS simulator
152197
```
153198

154199
**6. RNTestProject + iOS + JSC:**
155200

156201
```bash
157202
yarn test-e2e-local -t "RNTestProject" -p "iOS" -h false -c $GITHUB_TOKEN
203+
# verify tests "what to test"
204+
# kill metro
205+
xcrun simctl uninstall booted org.reactjs.native.example.RNTestProject # delete RNTestProject from your iOS simulator
158206
```
159207

160208
**7. RNTestProject + Android + Hermes:**
161209

162210
```bash
163211
yarn test-e2e-local -t "RNTestProject" -p "Android" -h true -c $GITHUB_TOKEN
212+
# verify tests "what to test"
213+
# kill metro
214+
adb uninstall com.rntestproject # delete RNTestProject from your Android emulator
164215
```
165216

166217
**8. RNTestProject + Android + JSC:**
167218

168219
```bash
169220
yarn test-e2e-local -t "RNTestProject" -p "Android" -h false -c $GITHUB_TOKEN
221+
# verify tests "what to test"
222+
# kill metro
223+
adb uninstall com.rntestproject # delete RNTestProject from your Android emulator
170224
```
171225

172226
## What to test?
@@ -186,69 +240,3 @@ yarn test-e2e-local -t "RNTestProject" -p "Android" -h false -c $GITHUB_TOKEN
186240
2. Fill out the table of test dimensions
187241
3. Refer to the [spreadsheet of test cases](https://docs.google.com/spreadsheets/d/1p0Zs37ecau7Ty4L_4g1jf7PlivOmIEPjmDYq9Jp8qWI/edit?usp=sharing), make any outstanding notes in the Test Report
188242
4. Close the Test Report issue if the release passes testing
189-
190-
### Recommended Sequence for testing
191-
192-
> [!Tip]
193-
> Make sure the remote assets are built on your release branch to use the `-c` option (highly recommended)
194-
195-
> [!Note]
196-
> On React Native **`< 0.81`** `test-release-local` is called `test-e2e-local`
197-
198-
```bash
199-
react-native$ yarn test-release-local-clean # alias this command to make your life easier to something like "clean"
200-
201-
# RNTester
202-
203-
react-native$ yarn test-release-local -t "RNTester" -p "iOS" --hermes true -c $GITHUB_TOKEN
204-
# verify tests "what to test"
205-
# kill metro
206-
xcrun simctl uninstall booted com.meta.RNTester.localDevelopment # delete RNTester from your iOS simulator
207-
208-
react-native$ yarn test-release-local -t "RNTester" -p "iOS" --hermes false -c $GITHUB_TOKEN
209-
# verify tests "what to test"
210-
# kill metro
211-
xcrun simctl uninstall booted com.meta.RNTester.localDevelopment # delete RNTester from your iOS simulator
212-
213-
react-native$ yarn test-release-local -t "RNTester" -p "Android" --hermes true -c $GITHUB_TOKEN
214-
# verify tests "what to test"
215-
# kill metro
216-
adb uninstall com.facebook.react.uiapp # delete RNTester from your Android emulator
217-
218-
react-native$ yarn test-release-local -t "RNTester" -p "Android" --hermes false -c $GITHUB_TOKEN
219-
# verify tests "what to test"
220-
# kill metro
221-
adb uninstall com.facebook.react.uiapp # delete RNTester from your Android emulator
222-
223-
# RNTestProject
224-
225-
react-native$ yarn test-release-local -t "RNTestProject" -p "iOS" --hermes true -c $GITHUB_TOKEN
226-
# verify tests "what to test"
227-
# kill metro
228-
xcrun simctl uninstall booted org.reactjs.native.example.RNTestProject # delete RNTestProject from your iOS simulator
229-
230-
react-native$ yarn test-release-local -t "RNTestProject" -p "iOS" --hermes false -c $GITHUB_TOKEN
231-
# verify tests "what to test"
232-
# kill metro
233-
xcrun simctl uninstall booted org.reactjs.native.example.RNTestProject # delete RNTestProject from your iOS simulator
234-
235-
react-native$ yarn test-release-local -t "RNTestProject" -p "Android" --hermes true -c $GITHUB_TOKEN
236-
# verify tests "what to test"
237-
# kill metro
238-
adb uninstall com.rntestproject # delete RNTestProject from your Android emulator
239-
240-
react-native$ yarn test-release-local -t "RNTestProject" -p "Android" --hermes false -c $GITHUB_TOKEN
241-
# verify tests "what to test"
242-
# kill metro
243-
adb uninstall com.rntestproject # delete RNTestProject from your Android emulator
244-
```
245-
246-
## Versions older than 71
247-
248-
You need to use the interactive script run you through the different variants in [Test Dimensions](#dimensions-to-test):
249-
250-
```bash
251-
./scripts/test-manual-e2e.sh
252-
```
253-
254-
This script will ask you to select which platform and which project you want to test, and then to execute a series of extra steps during the process. Bear in mind, when testing RNTester on Android, you need to start the Android emulator ahead of time or it will fail.

0 commit comments

Comments
 (0)