2011-06-21 82 views
4
  1. 如果讓我說我創建了一個輸入文本,應該只接受1到100之間的任何小數,我該如何測試它?良好的邊框測試

    IMHO,我將測試在此流速:

    「0」, 「1」, 「50」, 「100」, 「101」, 「0.9」, 「100.1」, 「A」

    這些夠了嗎?是否有結構化的流程如何測試這種邊界測試? (任何好的文章?)我還應該測試「1 + 1」嗎?

  2. 如果問題改爲「接受1到100之間的任何整數」,該系列測試足夠了嗎?該系列輸入是否需要與測試小數點不同?

    「0」, 「1」, 「50」, 「50.5」, 「100」, 「101」, 「0.9」, 「100.1」, 「A」

回答

2

對於#1,則重新走上正軌,我認爲你甚至可能有太多同等級別的案例。通常情況下,如果你有一個下界L和一個上界U,足以證明L和U是有效的,而L - e和L + e是無效的(其中e是最小或合理的小增量)邊界)。如果你想爲理智添加額外的價值,那麼在L和U之間進行測試也是可行的。有人會說,在L和U之間選擇一個隨機值同樣適用,但我更喜歡我的測試是確定性的。

所以在上面的例子中,L是1並且U是100.由於它是一個十進制值,所以e的值很棘手,因爲e在理論上可以非常小。在那裏選擇合適的東西很適合你的客戶場景。例如,如果它是美元數額,選擇0.01將是一個不錯的選擇。在這種情況下,這會給我們留下「1」,「100」,「0.99」和「100.01」。

由於您的文本框也可以接受字母,因此在這裏也可以測試非數字數據,就像您上面用「A」所做的那樣。減輕測試負擔的另一種方法是將您的客戶體驗設計爲僅允許有效值。在整數情況下,執行此操作的一種方法是使用僅具有1和100之間整數值的組合框。

對於#2,場景確實有所改變。 L是1,U是100,但e現在是1,因爲唯一有效的值是整數值。如果您想測試小數值是否會引發錯誤,那麼這是一種不同類型的情況,並且與邊界無關。所以「50.5」和「A」對於錯誤條件就足夠了。或者如果你想小數點,你也可以測試。

0

邊界測試(或有時稱爲邊界值分析)的危險在於我們傾向於將重點放在清晰明顯的邊界上。但是可以有許多未知數,並且難以預測邊界。如果我們在清晰明顯的界限中信任太多,那麼我們有可能在隱藏的邊界附近失敗。因此,雖然重點關注已知邊界很重要,但以不同的時間間隔嘗試一系列測試並不會造成任何損害。

所以我會說你的一套測試可能會有點亮。

如果您有: 「0」,「1」,「50」,「100」,「101」,「0.9」,「100。1「,」A「

我會更傾向於在兩者之間增加一些: 」0「,」1「,」10「,」20「,」30「,」40「,」50「 ,「60」,「70」,「80」,「90」,「100」,「101」,「0.9」,「100.1」,「A」

您可能還想考慮添加一些極端情況如果這些測試是自動化的,並且向輸入數據添加更多的數據點,則很少有時間可用在測試運行中,他們的成本非常低,但如果這些測試是手動的,那麼你可以決定減少測試集,但不要只是不拘泥於邊界...

相關問題