* Add integration test docs, discussion guidelines, and edit contribution guide * Editorial changes to the integration test page * Test cases fixed * Backslashes removed * Fixes from ellyromanova * Update pull_request_template.md * Delete two issue templates * Remove notion of the forum * Update CODEOWNERS * Fix general_test_cases.md symbol * Fix general_test_cases.md again --------- Co-authored-by: Ruslan Nadyrshin <110516632+rnadyrshin@users.noreply.github.com> Co-authored-by: Štefan Croitoru <66339601+turbospok@users.noreply.github.com>
21 KiB
General — Test Cases
1. BLE
Steps:
-
Go to Settings → BT → BT ON, and return to the main screen.
Expected result: BT icon appears after switching on.
-
Restart device.
Expected result after reboot BT is on.
-
Open the Mobile application and find Flipper in the list of Bluetooth devices on your phone and connect to it.
Expected result:
- Pairing with a companion works.
- The correct name of the flipper in the list of devices (Flipper NAME).
- The application has successfully connected and shows the correct flipper data.
-
Close companion.
-
Open the companion on another phone and repeat the pairing.
Expected result: the pairing is working again.
-
Close the application and connect the first companion.
Expected result: the application has connected.
2. Using the U2F application
Steps:
-
Launch the U2F application.
-
Go to Yubico demo website.
-
Register the key.
Expected result:
- A system window appears asking you to press the key (flipper) button.
- Registration completed successfully.
- (auth) appeared on the same page.
-
Pass key authentication.
Expected result:
- A system window appears asking you to press the key (flipper) button.
- Authentication was successful.
3. Settings. Pin Code
Steps:
-
Select PIN Setup.
Expected result: instructions for setting a password appeared.
-
Create a password.
Expected result: password set.
-
Lock your device and press any button.
Expected result: when pressed, a password entry window appears.
-
Enter the wrong password.
Expected result: if the password is incorrect, the password repeat window and the red indicator is on.
-
Enter the wrong password several times and reboot the device.
Expected result:
- When entering multiple entries, a waiting time appears and is incremented in case of incorrect attempts.
- When rebooting, the password entry timer starts again.
-
Enter the correct password. Expected result: Flipper is unlocked with the correct password.
-
Go to Settings > Desktop and change password
Expected result: the password has changed and is correct.
-
Go to Settings > Desktop and remove password.
Expected result: the password has been deleted.
-
Enable automatic blocking of a device with an added pin.
Expected result: Flipper locked automatically.
-
Unlock Device.
Expected result: Flipper unlocked with the correct pin.
-
Reboot device and Unlock.
Expected result: Flipper was locked after reboot and unlocked successfully.
4. Settings. Storage
Steps:
-
Settings → Storage → About internal storage.
Expected result:
- Displays device name, file system type.
- Total storage capacity and available capacity in kilobytes.
-
Settings → Storage → About SD Card.
Expected result:
- Correct card size and free space. Units of measurement scale depending on size (Kb/Mb/Gb etc.).
- Correct card type.
- No errors.
-
Unmount and go to Info.
Expected result:
- A dialog box appears.
- SD card not mounted: If an SD card is inserted, pull it and reinsert it.
-
Benchmark SD Card.
Expected result: test passed successfully.
-
Format SD Card (It's better to use another SD)
Expected result: formatting was successful.
-
Factory reset. Factory reset, which resets everything, including all installed applications and region (Its better to use another Flipper).
Expected result: the reset occurred, and all the specified settings were set to factory.
5. Archive and File Browser
Steps:
-
Insert a card with a large number of files on the SD card and pre-recorded keys and cards.
Expected result: the map was successfully identified.
-
On the main screen, press DOWN and go to different sections (Favorites, iButton, NFC, SubOne, Rfid, Infrared, Browser).
Expected result: each section has stored keys/cards.
-
Run keys through each section.
Expected result: the keys have been launched successfully.
-
Rename multiple keys.
Expected result: keys successfully renamed.
-
Delete multiple keys.
Expected result: keys successfully deleted.
6. "Dummy mode"
Steps:
-
It is recommended to install in the settings, applications in quick access for dummy mode, for buttons LEFT, DOWN, RIGHT and their clamping.
-
On the main screen press UP → Dummy mode.
Expected result: upon exiting to the desktop, the gamepad icon appeared. When you press the central button (OK), the Passport opens.
-
Press, LEFT, BOTTOM, RIGHT, and also press and hold them.
Expected result: exactly those applications assigned to a specific button open and hold down the button.
-
On the main screen press UP → Default mode.
Expected result: Dummy mode is disabled, the gamepad icon has disappeared, when you click OK, the application menu opens.
7. Checking cards and protocols. NTAG215
Steps:
-
Shared step [1]: Read.
-
Read the subject using the flipper.
Expected result:
- The subject read successfully.
- The information on the read key corresponds to the original.
-
-
Shared step [2]: Emulation.
-
Emulate the read key and read it as another flipper.
Expected result:
- The key was considered another flipper.
- The information on the key is identical to the original.
-
-
Shared step [3]: Save.
-
Save previously read key.
Expected result:
- The key was saved with the specified name.
- After saving, the scene changed to the "Saved" directory.
-
8. Checking cards and protocols. Mifare DESFire
Steps:
-
Shared step [1]: Read.
-
Read the subject using the flipper.
Expected result:
- The subject read successfully.
- The information on the read key corresponds to the original.
-
-
Shared step [2]: Emulation.
-
Emulate the read key and read it as another flipper.
Expected result:
- The key was considered another flipper.
- The information on the key is identical to the original.
-
-
Shared step [3]: Save.
-
Save previously read key.
Expected result:
- The key was saved with the specified name.
- After saving, the scene changed to the "Saved" directory.
-
9. Check compliance
Steps:
- Verify that all screens are correct.
10. Checking cards and protocols. Mifare Ultralight
Steps:
-
Shared step [1]: Read.
-
Read the subject using the flipper.
Expected result:
- The subject read successfully.
- The information on the read key corresponds to the original.
-
-
Shared step [2]: Emulation.
-
Emulate the read key and read it as another flipper.
Expected result:
- The key was considered another flipper.
- The information on the key is identical to the original.
-
-
Shared step [3]: Save.
-
Save previously read key.
Expected result:
- The key was saved with the specified name.
- After saving, the scene changed to the "Saved" directory.
-
11. Factory update via qFlipper MacOS
Testing update of Flipper from factory state.
Steps:
-
Rollback Flipper firmware to 0.64.5.
-
Update firmware to version under test.
Expected result: update on latest stable version of companion (OS) was successful.
12. Factory update via qFlipper Win11
Testing update of Flipper from factory state.
Steps:
-
Rollback Flipper firmware to 0.64.5.
-
Update firmware to version under test.
Expected result: update on latest stable version of companion (OS) was successful.
13. Factory update via qFlipper Ubuntu
Testing update of Flipper from factory state.
Steps:
-
Rollback Flipper firmware to 0.64.5.
-
Update firmware to version under test.
Expected result: update on latest stable version of companion (OS) was successful.
14. Factory update via Android app
Testing update of Flipper from factory state.
Steps:
-
Rollback Flipper firmware to 0.64.5.
-
Update firmware to version under test.
Expected result: update on latest stable version of companion (OS) was successful.
15. Factory update via iOS app
Testing update of Flipper from factory state.
Steps:
-
Rollback Flipper firmware to 0.64.5.
-
Update firmware to version under test.
Expected result: update on latest stable version of companion (OS) was successful.
16. Factory update via Lab web app
Testing update of Flipper from factory state
Steps:
-
Rollback Flipper firmware to 0.64.5.
-
Update firmware to version under test.
Expected result: update on latest stable version of companion (OS) was successful.
17. Checking cards and protocols. Mifare 1K
Steps:
-
Shared step [1]: Read.
-
Read the subject using the flipper.
Expected result:
- The subject read successfully.
- The information on the read key corresponds to the original.
-
-
Shared step [2]: Emulation.
-
Emulate the read key and read it as another flipper.
Expected result:
- The key was considered another flipper.
- The information on the key is identical to the original.
-
-
Shared step [3]: Save.
-
Save previously read key.
Expected result:
- The key was saved with the specified name.
- After saving, the scene changed to the "Saved" directory.
-
-
Shared step [4]: Write.
-
Write a previously saved key to another storage device using the "write" function.
Expected result: the card was recorded, a success scene appeared.
-
18. Region provisioning via qFlipper MacOS
Verifying that Sub-GHz region is provisioned correctly
Steps:
-
Reset region on Flipper by deleting region data.
-
Verify that region is not selected.
-
Run update on target system.
Expected result: region correlates to the internet location.
-
Verify bands in the app.
Expected result: bands correctly correspond to test region.
19. Region provisioning via qFlipper Win11
Verifying that Sub-GHz region is provisioned correctly.
Steps:
-
Reset region on Flipper by deleting region data.
-
Verify that region is not selected.
-
Run update on target system.
Expected result: region correlates to the internet location.
-
Verify bands in the app.
Expected result: bands correctly correspond to test region.
20. Region provisioning via qFlipper Ubuntu
Verifying that Sub-GHz region is provisioned correctly
Steps:
-
Reset region on Flipper by deleting region data.
-
Verify that region is not selected.
-
Run update on target system.
Expected result: Region correlates to the internet location.
-
Verify bands in the app.
Expected result: bands correctly correspond to test region.
21. Region provisioning via Android app
Verifying that Sub-GHz region is provisioned correctly
Steps:
-
Reset region on Flipper by deleting region data.
-
Verify that region is not selected.
-
Run update on target system.
Expected result: region correlates to the internet location.
-
Verify bands in the app.
Expected result: bands correctly correspond to test region.
22. Region provisioning via iOS app
Verifying that Sub-GHz region is provisioned correctly
Steps:
-
Reset region on Flipper by deleting region data.
-
Verify that region is not selected.
-
Run update on target system.
Expected result: region correlates to the internet location.
-
Verify bands in the app.
Expected result: bands correctly correspond to test region.
23. Region provisioning via Lab web app
Verifying that Sub-GHz region is provisioned correctly.
Steps:
-
Reset region on Flipper by deleting region data.
-
Verify that region is not selected.
-
Run update on target system.
Expected result: region correlates to the internet location.
-
Verify bands in the app.
Expected result: bands correctly correspond to test region.
24. Region provisioning
Verifying that Sub-GHz region is provisioned correctly
Steps:
-
Reset region on Flipper by deleting region data.
-
Verify that region is not selected.
-
Run update on target system.
Expected result: region correlates to the internet location.
-
Verify bands in the app.
Expected result: bands correctly correspond to test region.
25. Settings. Power
Steps:
-
Battery info.
Expected result:
- Displays charge level, battery temperature, voltage and health.
- Consumption with backlight 18-19mA.
- Without backlight the device is in sleep mode (Napping).
-
Reboot → Flipper OS.
Expected result:
- A dialog box appears.
- Flipper has rebooted into the system.
-
Reboot → Firware upgrade.
Expected result:
- A dialog box appears.
- Flipper switched to dfu mode.
-
Power Off.
Expected result:
- A dialog box appeared.
- Flipper turned off.
- When the cable is connected, after clicking "Disconnect", the "You can now disconnect the cable" screen will appear. Once disconnected, the device will turn off.
26. Settings. System
Steps:
-
Hand orient change to Lefty.
Expected result: the image on the screen will turn upside down, and the control buttons will react in a mirror way.
-
Units change to imperial.
Expected result: units of measurement, wherever they are, will be displayed in imperial format.
-
Change Time Format to 12h.
Expected result: the time will change to AM/PM format.
-
Date format change to any other.
Expected result: the position of the date elements will change.
-
Change Log Level.
Expected result: displaying logs in the CLI/Putty interface.
-
Enable/disable debug.
Expected result: the ability to debug the device will be enabled, for example in VS Code.
-
Enable Trace.
Expected result: the device will start to slow down, and when you exit or enter any menu, you will receive a detailed log about this.
-
Change Sleep Method to Legacy.
Expected result: the device will no longer enter energy saving mode, and in the battery menu we will see the energy consumption permanently.
-
Change file naming to Detailed.
Expected result: when creating a key without specifying your own name, the name has its own format from "Untolded_door_" to "Key_type_dd_mm_yyyy".
-
Change log device from USART.
Expected result: after the change, the Game module will stop working and being recognized.
27. Settings. Bluetooth
Steps:
-
Settings → Bluetooth → on.
Expected result:
- Bt icon appeared on the main screen.
- The device appears in the list for connection.
-
Settings → Bluetooth → off.
Expected result: the icon disappeared, the device disappeared from the search / disconnected from the companion.
-
Unpair all devices.
Expected result:
- The "Unpair All Devices?" dialog box appears.
- All devices are forgotten. When trying to connect to the previous device, pairing will be attempted again.
28. Flipper Name
Checking whether the flipper name is displayed correctly in different scenarios.
Steps:
-
Press the DOWN button and make sure the name is there.
-
Go to Settings → Passport.
-
On Linux, run
dmesg -w. Connect the device via USB, make sure that the name is in the device name and in the Serial numberls -l /dev/serial/by-id/.Expected result: the name is in USB Serial Number.
-
On Windows, go to settings → bluetooth and devices → devices.
Expected result: the device was displayed with the desired name among other devices:

-
Check on MacBook that the device name is in the list of devices
Expected result: the name is on the MacBook.
-
Check the name in Flipper Lab
Expected result: in the web interface the name is the same as in the previous steps:

29. Settings. Desktop
Steps:
-
Show clock. Enable clock display and turn off clock display.
Expected result:
- A clock is displayed on the desktop.
- The clock is no longer displayed.
-
Set Quick Access Apps.
Expected result: a dialog box appears with a choice of settings for standard mode and dummy mode.
-
Install applications for each button in both modes and check launch
Expected result: each button launches exactly the application to which it is assigned.
-
Remove one or more applications that are set to quick access and try to launch.
Expected result: startup error screen appears.
30. Settings. LCD and Notifications
Steps:
-
Go to menu LCD and Notifications.
-
In the LCD contrast setting, move the slider to maximum and minimum.
Expected result: contrast changes.
-
In the LCD backlight setting, change the screen brightness to 75%, 50%, 25%, 0%.
Expected result:
- The screen becomes dimmer as the brightness percentage decreases.
- At 0% there is no backlight.
-
In the Backlight time setting, check the screen operating time
Expected result: screen turns off after 1, 5, 15, 30, 60, 120 seconds.
-
In the LED brightness setting, change the LED brightness to 75%, 50%, 25%, 0%.
Expected result
- The LED changes its brightness.
- At 0% nothing lights up.
-
In the Volume setting, change the volume to 75%, 50%, 25%, 0%
Expected result: volume changes.
-
In the Vibro setting, change the value to OFF, and back to ON.
Expected result: when changing the setting from OFF - ON, vibration occurs.
31. Apps. Base Apps
Steps:
-
Go to Applications → BT → remote.
-
Connect to phone or PC.
Expected result:
- Pairing works.
- Name in the device list of the Control {Flipper Name} view.
-
Check controls.
Expected result: control works.
-
Open companion and exit the BT remote application
Expected result: Flipper reconnected with his companion.
-
USB Remote. Connect the flipper to your PC or phone using a cable and open the application, selecting the desired mode.
Expected result: it just works in mouse or keyboard mode.
-
Go to Games - Snake and start the game with pressing the buttons.
Expected result:
- The game has started.
- Snake control works.
32. Up Button Menu
Steps:
-
Press the "Up" button.
-
Lock the device using the "lock" item.
Expected result: the device is locked with animation.
-
Unlock the device by pressing the BACK button 3 times.
Expected result:
- The message Unlocked appeared.
- Screen unlocked.
-
MUTE. Press Mute button.
Expected result: a crossed out note icon appeared on the main screen.
-
UNMUTE.
Expected result: the icon has disappeared.
33. Checking cards and protocols. Metakom
Steps:
-
Go to iButton.
-
Shared step [1]: Read.
-
Read the subject using the flipper.
Expected result:
- The subject read successfully.
- The information on the read key corresponds to the original.
-
-
Shared step [2]: Emulation.
-
Emulate the read key and read it as another flipper.
Expected result:
- The key was considered another flipper.
- The information on the key is identical to the original.
-
-
Shared step [3]: Save.
-
Save previously read key.
Expected result:
- The key was saved with the specified name.
- After saving, the scene changed to the "Saved" directory.
-
34. Checking cards and protocols. Mifare 4K
Steps:
-
Shared step [1]: Read.
-
Read the subject using the flipper.
Expected result:
- The subject read successfully.
- The information on the read key corresponds to the original.
-
-
Shared step [2]: Emulation.
-
Emulate the read key and read it as another flipper.
Expected result:
- The key was considered another flipper.
- The information on the key is identical to the original.
-
-
Shared step [3]: Save.
-
Save previously read key.
Expected result:
- The key was saved with the specified name.
- After saving, the scene changed to the "Saved" directory.
-
-
Shared step [4]: Write.
-
Write a previously saved key to another storage device using the "write" function.
Expected result the card was recorded, a success scene appeared.
-
35. Apps. JS Scripts
Steps:
-
Run a GUI demo script.
-
Follow the script, going into each submenu.
Expected result: each menu will have exactly what is stated in the title.
-
Run a delay script.
Expected result: the count to 3 occurred, the script completed successfully.
