Specifically, this line ends up calling `CanvasBackend.__init__()`, which only works if that function accepts no input arguments:

https://github.com/vispy/vispy/blob/master/vispy/app/tests/test_qt.py#L28

I originally tried your suggestion of adding args or kwargs to the `__init__` methods of the backends, and this problem caused me to come up with this alternate solution.