From bff335cf7f90a0dc3aeafc199aaa81697d5f122b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adri=C3=A1n=20Chaves?= Date: Mon, 5 Aug 2019 15:47:58 +0200 Subject: [PATCH] Improve the error message in contract failures due to multiple missing fields --- scrapy/contracts/default.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scrapy/contracts/default.py b/scrapy/contracts/default.py index 0f6bdbad2..7745959a7 100644 --- a/scrapy/contracts/default.py +++ b/scrapy/contracts/default.py @@ -86,4 +86,5 @@ class ScrapesContract(Contract): if isinstance(x, (BaseItem, dict)): missing = [arg for arg in self.args if arg not in x] if missing: - raise ContractFail("'%s' field is missing" % " ".join(missing)) + raise ContractFail( + "Missing fields: %s" % ", ".join(missing))