robotframework / robotframework/robotframework
BuiltIn: Enhance error reporting of comparison keywords especially when `ignore_case=True`
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 11.9k
- Forks
- 2.6k
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 10
Description
Case-insensitivity support added in RF 3.0.1 (#2439) works fine otherwise, but error reporting isn't always consistent. Sometimes error messages show the compared values turned to lower case, and in others they show the original values. It would probably be best to to always show the original values but add a note like (case-insensitive) to the message automatically.
There are also other inconsistencies in error reporting (e.g. do messages end with . or not) that can be fixed when refactoring error reporting in general. Having a better way to report errors involving large strings or containers with many items would be great too, but that is probably so big task that it would deserve a separate issue.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the BuiltIn comparison keywords and reproduce the inconsistent error messages with ignore_case=True, comparing cases where values are lowercased with cases showing the originals. Review the existing error-reporting behavior and define done as consistent original-value messages with an automatic case-insensitive note, while also resolving punctuation inconsistencies without expanding into large-value formatting.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100