Skip to content

Warn on test arguments with default values? #12693

Open
@The-Compiler

Description

As someone pointed out in my pytest training, pytest currently silently accepts:

def test_fixt(fixt=42):
    ...

with fixt obviously being 42 in the test function no matter if such a fixture was ever defined or not.

There doesn't really seem any valid reason to do this kind of thing, yet some ideas float around how default argument like this could be used in the future with either test functions (e.g. #3834) or with fixture functions (e.g. #8109).

To avoid accidental usage and possibly allow for different usage in the future, should we maybe add a warning if default argument values are used like this?

Metadata

Assignees

No one assigned

    Labels

    type: enhancementnew feature or API change, should be merged into features branch

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions