- # Test plan
-
- This is the test plan that I follow for every release. I use it to ensure that no regression has
- been introduced.
-
-
- ## Step 1: Preparation - build and flash the firmware
-
- * Use the latest stable release for ESPHome (to make sure that my code builds and works with that
- release). In my clone I make sure that I checked out the master branch and that it's up-to-date
- with the origin.
-
- * Remove the cached framework package:
- `/bin/rm -fR ~/.platformio/packages/framework-arduinoespressif32`
-
- * Copy [`example.yaml`](../example.yaml) to a clean build directory, and update the first two sections for the
- local setup (substitutions, wifi, api, ota).
-
- * Use `esphome example.yaml compile` to build the code.
-
- * Upload this code to the lamp.
-
-
- ## Step 2: Perform the tests
-
- * Touch the power button --> the light must turn on.
-
- * Touch the power button again --> the light must turn off.
-
- * Touch the slider at any level --> the light must turn on, using the level at which the slider was
- touched as the brightness. The front panel illumination is turned on and shows the brightness
- level.
-
- * Touch the slider at various points and touch the slider while moving your finger up and down -->
- the brightness of the light and the brightness level on the front panel must follow the touches.
-
- * Touch and hold the power button --> the light must go into "night light" mode. This means that it
- will become very dim. The front panel illumination must be turned off.
-
- * Touch the slider at a random level --> the light must go back to its normal brightness levels and
- the front panel illumination must be turned on again.
-
- * Touch the color button a few times in a row --> the light must loop through the various preset
- light colors.
-
- * Touch and hold the color button --> the light must switch to a different preset group. There are
- two groups: one with rgb colors and one with white light colors, and holding the color button will
- switch between these two.
-
- * Touch the color button to select a light color, long touch it to switch to the other preset group,
- then long touch again to switch the preset group again -> the lamp must remember what light colors
- were active within the preset groups. If the red preset was selected, you switch to the white
- light group, select a different white preset and then go back to the rgb presets, then the light
- must become red again.
-
- * Go to Home Assistant and check:
- * if you can turn on/off the lamp
- * if you can select colors from the RGB color model
- * if you can select colors from the Color Temperature model
- * if you can set the brightness of the lamp
- * if selecting the lowest possible brightness results in the lamp
- switching to "night light" mode
- * if a transition from off to on with a long transition time works (e.g. 10s)
- * if a transition from on to off with a long transition time works
- * if a transition from night light to some bright light (e.g. 10s) can be
- interrupted by a transition back to night light (e.g. after 5 seconds),
- resulting in a transition back (not an instant drop to night light)
-
-
- ## Step 3: Release the new version
-
- Only after performing these tests successfully, the new version can be released.
- Release steps are documented in [`releaseplan.md`](releaseplan.md).
|