I think this powerful test suite would be made even better with a more straightforward integration with Mbed's existing greentea testing system.
While this test suite was originally developed for integration tests of the BLE stack, if combined with the greentea testing suite it would provide an ideal way of performing integration tests on BLE services.
My vision for Mbed BLE is to eventually offer a number of standard BLE services (currently working on a more robust implementation of the old UARTService).
This is similar to what Mbed did in the past (and still does). Some of the previous standard Mbed BLE services were clearly lacking in terms of robustness, usability, and quality and were recently removed from Mbed master.
I think Mbed should provide common-use-case BLE services that are put through the same rigorous testing as the BLE stack.
I'm currently working on an integration test using this suite and the greentea suite for the above UARTService
implementation. My integration test is set up so that a single DUT runs the greentea client (which hosts a GattServer
with a UARTService
). Using the greentea framework, I plan to call python host test scripts to interact with boards running the ble-cliapp
. The host test scripts will manipulate the boards running ble-cliapp
to interact with the greentea DUT over BLE.
I'm starting this issue to collect feedback on the proposed "standard services" idea and the integration testing strategy.
The change I really need is:
The official test_suite
python package must be installable so that out-of-source python scripts can import things from the common
directory. This would provide most of what the host tests need to interact with connected boards running the ble-cliapp
.
Not only would this allow Mbed to provide standard BLE services that are thoroughly tested, it would provide an example of how customers can use these tools to do integration testing on their own end devices running the Mbed BLE stack.
@pan- @paul-szczepanek-arm Thoughts?