Skip to content

Testing Procedures

Melissa LeBlanc-Williams edited this page Sep 19, 2025 · 14 revisions

Preparation

  1. Open the browser and navigate to code.circuitpython.org (or similar if testing locally/beta)
  2. Clear all bluetooth devices from OS by opening bluetooth settings, finding any CircuitPython device and removing/forgetting it.
  3. Clear all bluetooth devices from Chrome by visiting chrome://bluetooth-internals/#devices
  4. Click the Start Scan
  5. [TODO] The next step doesn't currently work in Chrome
  6. For each device starting with CIRCUITPY:
    • Click Inspect
    • Click Forget

All Workflows

These should be tested in each workflow

UI Testing

  1. Load Web Page
  2. The connection dialog should be displayed.
  3. Click outside of box and the dialog should disappear
  4. Try typing in the Code Editor

File Ops

  1. Click Open
  2. Create a new folder with the + Folder button
  3. Rename the folder using the Rename button
  4. Enter into the folder by selecting the folder and clicking Open
  5. Folder Renaming/Moving is not currently supported by the FS API, so an error should appear in the console, but control should return to the user.
  6. Enter into the folder To Test: Create File Rename File Move File Upload File Upload Folder Download Selected File Download Current Folder (Root) Download Current Folder (Subfolder) Download Selected Folder Delete File Delete Folder Open File Entering Folder by dbl clicking, Entering Folder by selecting and Pressing Open/Save Buttons Changing when selecting different things

Bluetooth Workflow Testing

Connection

  1. Make sure the bluetooth device is in Bluetooth mode by pressing reset while the neopixel flashes blue.
  2. Start with a clean page load.
  3. If the connection dialog is not shown, click connect.
  4. Click Bluetooth
  5. Click Request Bluetooth Device
  6. The device should connect and the connect dialog dismissed
  7. Make sure the connect button changes to disconnect
  8. Click disconnect and the device should disconnect
  9. Click connect, then Bluetooth
  10. Click Reconnect
  11. The device should connect again

File Operations Testing

  1. Click Open
  2. Create a new folder with the + Folder button
  3. Rename the folder using the Rename button
  4. Enter into the folder by selecting the folder and clicking Open

Web Workflow Testing

Connection from Website

  1. Make sure the web workflow device is set up to connect (see Learn Guide).
  2. Start with a clean page load.
  3. If the connection dialog is not shown, click connect.
  4. Click WiFi

Connection from Device

File Operations Testing

USB Workflow

Device with Built-in USB

Use a device such as the ESP32-S2 or ESP32-S3

Connection through FSAPI for File Ops

Devices with built-in USB use the FileSystem API.

  1. Make sure the USB device is connected and running CircuitPython.
  2. Start with a clean page load.
  3. If the connection dialog is not shown, click connect.
  4. Click USB
  5. Click Connect to Device
  6. Click off the window or hit cancel
  7. An error should appear that no Serial Port was selected.
  8. Click Click Connect to Device again
  9. This time, select the serial port of the device you want to test and click Connect
  10. If you have previously selected a folder on a device, there will be a button that says something like "Use CIRCUITPY"
  11. Click Select a Different Folder
  12. Select the root of the device and click Select or OK
  13. Click the Use <location> button
  14. The dialog should automatically be dismissed
  15. Make sure the connect button changes to disconnect
  16. Click disconnect and the device should disconnect
  17. Click connect, then USB, then Connect to Device, then Use <location>
  18. The device should connect again

File Ops over FileSystem API

  1. Click Open
  2. Create a new folder with the + Folder button
  3. Rename the folder using the Rename button
  4. Enter into the folder by selecting the folder and clicking Open
  5. Folder Renaming/Moving is not currently supported by the FS API, so an error should appear in the console, but control should return to the user.
  6. Enter into the folder To Test: Create File Rename File Move File Upload File Upload Folder Download Selected File Download Current Folder (Root) Download Current Folder (Subfolder) Download Selected Folder Delete File Delete Folder Open File Entering Folder by dbl clicking, Entering Folder by selecting and Pressing Open/Save Buttons Changing when selecting different things

Device without Built-in USB

Use a device such as the ESP32 or ESP32-C6

Connection using Serial for File Ops

Devices without built-in USB use serial to send/receive files.

  1. Make sure the USB device is connected and running CircuitPython.
  2. Start with a clean page load.
  3. If the connection dialog is not shown, click connect.
  4. Click USB
  5. Click Connect to Device
  6. Click off the window or hit cancel
  7. An error should appear that no Serial Port was selected.
  8. Click Click Connect to Device again
  9. This time, select the serial port of the device you want to test and click Connect
  10. The dialog should automatically be dismissed
  11. Make sure the connect button changes to disconnect
  12. Click disconnect and the device should disconnect
  13. Click connect, then USB, then Connect to Device
  14. The device should connect again

File Ops

Serial

Clone this wiki locally