Dans mon application, il existe des modèles d'expression prédéfinis qui peuvent être utilisés pour filtrer les données. L'un d'eux est " between x and y
". Un ingénieur QA affirme qu'il y a un défaut dans sa définition, car " between 100 and 200
" donne des résultats différents de " between 200 and 100
". L'expression est traduite en interne par " value >= x and value <= y
", donc il n'y a évidemment aucun résultat lorsque la deuxième limite est inférieure à la première. J'ai vérifié que le même comportement est en SQL - " between x and y
" suppose que y> = x ou il n'y a aucun résultat. Cela signifie que l'opérateur n'est pas commutatif, du moins en SQL.
Donc, le QA a-t-il raison de dire que " between x and y
" devrait être commutatif?
between
doit inclure ou exclure les valeurs inférieures et supérieures. La personne chargée de l'assurance qualité peut être pédante, mais tant qu'il y a de l'incertitude, quelqu'un doit clarifier les histoires / exigences des utilisateurs. Il pourrait s'avérer que la façon dont cela se fait est de savoir comment cela est censé être, mais une décision doit être prise.