tests: Implement tentative version of "native" tests

This enables us to run the same test steps for multiple protocols