Linux bluetooth development
 help / color / mirror / Atom feed
From: Pauli Virtanen <noreply@github.com>
To: linux-bluetooth@vger.kernel.org
Subject: [bluez/bluez] 277b5b: doc: add functional/integration testing documentation
Date: Sat, 13 Jun 2026 09:14:07 -0700	[thread overview]
Message-ID: <bluez/bluez/push/refs/heads/1111076/000000-6b0711@github.com> (raw)

  Branch: refs/heads/1111076
  Home:   https://github.com/bluez/bluez
  Commit: 277b5b08b658b1788cc4e1e365e49cdf7b0adc54
      https://github.com/bluez/bluez/commit/277b5b08b658b1788cc4e1e365e49cdf7b0adc54
  Author: Pauli Virtanen <pav@iki.fi>
  Date:   2026-06-13 (Sat, 13 Jun 2026)

  Changed paths:
    A doc/test-functional.rst

  Log Message:
  -----------
  doc: add functional/integration testing documentation

Add documentation for functional/integration test suite.


  Commit: a5f3028cbfbc8211779bf15ec8badd1d1d642bf1
      https://github.com/bluez/bluez/commit/a5f3028cbfbc8211779bf15ec8badd1d1d642bf1
  Author: Pauli Virtanen <pav@iki.fi>
  Date:   2026-06-13 (Sat, 13 Jun 2026)

  Changed paths:
    A test/functional/__init__.py
    A test/functional/conftest.py
    A test/functional/requirements.txt
    A test/functional/test_bluetoothctl_vm.py
    A test/functional/test_btmgmt_vm.py
    A test/pytest.ini
    A test/test-functional
    A test/test-functional-attach

  Log Message:
  -----------
  test: add functional/integration testing framework

Add framework for writing tests simulating "real" environments where
BlueZ and other parts of the stack run on different virtual machine
hosts that communicate with each other.

Add some smoke tests for bluetoothctl and btmgmt.

The implementation for the VM setup is maintained separately in the
pytest-bluezenv plugin, https://pypi.org/project/pytest-bluezenv

Implements:

- RPC communication with tester instances running each of the VM hosts,
  so that tests can be written on the parent host which coordinates the
  execution.

- Extensible way to add stateful test-specific code inside the VM
  instances

- Logging control: output from different processes running inside the VM
  are separated and can be filtered.

- Test runner framework with Pytest, factored into a pytest plugin

- Grouping tests to minimize VM reboots

- Redirecting USB controllers to use for testing

There is no requirement that the tests spawn VM instances.


  Commit: 5b980c4a877fdd3b6460dfd8a517e8c75b4e2bf2
      https://github.com/bluez/bluez/commit/5b980c4a877fdd3b6460dfd8a517e8c75b4e2bf2
  Author: Pauli Virtanen <pav@iki.fi>
  Date:   2026-06-13 (Sat, 13 Jun 2026)

  Changed paths:
    M Makefile.am
    M configure.ac

  Log Message:
  -----------
  build: add functional testing target

This adds check-functional: target that runs the functional test suite.

Also add a --enable-functional-testing=<kernel-image> argument for
configure that can be used to include it in the check: make target,
possibly with a predefined kernel image.


  Commit: e27780d7bbf553fc34810f8bf5e7e8bbdbbcfc8e
      https://github.com/bluez/bluez/commit/e27780d7bbf553fc34810f8bf5e7e8bbdbbcfc8e
  Author: Pauli Virtanen <pav@iki.fi>
  Date:   2026-06-13 (Sat, 13 Jun 2026)

  Changed paths:
    A test/functional/test_tests.py

  Log Message:
  -----------
  test: functional: impose Python code formatting

Check Python code formatting of the functional test suite.


  Commit: b5e1ffdb14fa3a5bf11e57e41e1f67cf6eea1744
      https://github.com/bluez/bluez/commit/b5e1ffdb14fa3a5bf11e57e41e1f67cf6eea1744
  Author: Pauli Virtanen <pav@iki.fi>
  Date:   2026-06-13 (Sat, 13 Jun 2026)

  Changed paths:
    A test/functional/test_agent.py

  Log Message:
  -----------
  test: functional: add some Agent1 interface tests

Add test

test/functional/test_agent.py::test_agent_pair_bredr


  Commit: 6b0711ccbeee668ada328d5e4eff34f086222402
      https://github.com/bluez/bluez/commit/6b0711ccbeee668ada328d5e4eff34f086222402
  Author: Pauli Virtanen <pav@iki.fi>
  Date:   2026-06-13 (Sat, 13 Jun 2026)

  Changed paths:
    A test/functional/test_obex.py

  Log Message:
  -----------
  test: functional: add basic obex file transfer tests

Add tests for Obex DBus API and obexctl

test/functional/test_obex.py::test_obex_ftp_get
test/functional/test_obex.py::test_obex_ftp_list
test/functional/test_obex.py::test_obexctl_list


Compare: https://github.com/bluez/bluez/compare/277b5b08b658%5E...6b0711ccbeee

To unsubscribe from these emails, change your notification settings at https://github.com/bluez/bluez/settings/notifications

                 reply	other threads:[~2026-06-13 16:14 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bluez/bluez/push/refs/heads/1111076/000000-6b0711@github.com \
    --to=noreply@github.com \
    --cc=linux-bluetooth@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox