簡體   English   中英

小數范圍之間的C#硒聲明值

[英]C# Selenium Assert Value Between Decimal Range

我有一些過濾器,我正在編寫自動化工具,每當我認為有解決方案時,都會被證明是錯誤的。 它會通過,但隨后我將值更改為超出范圍,並且仍然通過。

這是我想要做的。 我在過濾器上有3種情況:

$10 or Less

$15-$30

$30+

我有一個以十進制表示的價格結果列表。 現在,我只想聲明所有三個結果。 這是我嘗試過的。 我包括了所有這些,但是我的問題一直是>>等於一個值但>大於另一個值的范圍。 我想念什么?

Seems to be working:
case "10 or less":
List<decimal> listDefault = price.Select(s => decimal.Parse(s)).ToList();
Assert.IsTrue(listDefault.Where(x => x < 10).Any());
break;

This does not appear to be working:
case "11-30":
List<decimal> listDefaultRange = price.Select(s => decimal.Parse(s)).ToList();
Assert.IsTrue(listDefaultRange.Any(a => 11 < 30));
break;

Seems to be working:
case "30+":
List<decimal> listDefaultMax = price.Select(s => decimal.Parse(s)).ToList();
Assert.IsTrue(listDefaultMax.Where(x => x > 30).Any());
break;

它應該是:

Assert.IsTrue(listDefaultRange.Any(x => x > 10 && x <= 30));

當您執行.Any(a => 11 < 30) ,僅檢查11 < 30是否忽略輸入值,這將始終返回true(如果序列包含任何元素)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM