diff --git a/changelog/12426.improvement.rst b/changelog/12426.improvement.rst new file mode 100644 index 00000000000..0da1f838aea --- /dev/null +++ b/changelog/12426.improvement.rst @@ -0,0 +1 @@ +A warning is now issued when :ref:`pytest.mark.usefixtures ref` is used without specifying any fixtures. Previously, empty usefixtures markers were silently ignored. diff --git a/src/_pytest/fixtures.py b/src/_pytest/fixtures.py index 383084e07f1..52dee3d62a7 100644 --- a/src/_pytest/fixtures.py +++ b/src/_pytest/fixtures.py @@ -1535,7 +1535,9 @@ def _getautousenames(self, node: nodes.Node) -> Iterator[str]: def _getusefixturesnames(self, node: nodes.Item) -> Iterator[str]: """Return the names of usefixtures fixtures applicable to node.""" - for mark in node.iter_markers(name="usefixtures"): + for marker_node, mark in node.iter_markers_with_node(name="usefixtures"): + if not mark.args: + marker_node.warn(Warning("usefixtures() is empty, so it has no effect")) yield from mark.args def getfixtureclosure(