New test interface

This constructor might also be `private[testing]`.