When testing, if you assign a plain function to BaseFeatureFixture.feature it gets transformed[0] to a bound method and therefore gets called with a "self" argument (along with the fixture). This behavior will almost always cause a type error in the feature being tested.
[0] Actually the function is untouched but getattr will always return it as a bound method.