Bluesky app fork with some witchin' additions 馃挮
1# Testing instructions
2
3Make sure you've copied `.env.example` to `.env.test` and provided any required
4values.
5
6Install dependencies in `/dev-env`
7
8```
9cd dev-env && pnpm install
10```
11
12## Using Maestro
13
141. Install Maestro by following [these instructions](https://maestro.mobile.dev/getting-started/installing-maestro). This will help us run the E2E tests.
152. You can write Maestro tests in `/.maestro/flows/` directory by creating a new `.yml` file or by modifying an existing one.
163. You can also use [Maestro Studio](https://maestro.mobile.dev/getting-started/maestro-studio) which automatically generates commands by recording your actions on the app. Therefore, you can create realistic tests without having to manually write any code. Use the `maestro studio` command to start recording your actions.
17
18### Running on Android
19
20You will need to allow your device access to the port that the mock server is running on.
21
22```
23adb reverse tcp:3000 tcp:3000
24```
25
26### Running Maestro tests
27
28- In one tab, run `pnpm e2e:mock-server`
29- In a second tab, run `pnpm e2e:build`
30- In a third tab, run `pnpm e2e:run`
31
32## Using Flashlight for Performance Testing
331. Make sure Maestro is installed (optional: only for automated testing) by following the instructions above
342. Install Flashlight by following [these instructions](https://docs.flashlight.dev/)
353. The simplest way to get started is by running `pnpm perf:measure` which will run a live preview of the performance test results. You can [see a demo here](https://github.com/bamlab/flashlight/assets/4534323/4038a342-f145-4c3b-8cde-17949bf52612)
364. The `pnpm perf:test:measure` will run the `scroll.yaml` test located in `__e2e__/maestro/scroll.yaml` and give the results in `.perf/results.json` which can be viewed by running `pnpm:perf:results`
375. You can also run your own tests by running `pnpm perf:test <path_to_test>` where `<path_to_test>` is the path to your test file. For example, `pnpm perf:test __e2e__/maestro/scroll.yaml` will run the `scroll.yaml` test located in `__e2e__/maestro/scroll.yaml`.