軟件測試——構造 NextDate 問題的弱一般的等價類測試用例

軟件測試——構造 NextDate 問題的弱一般的等價類測試用例

問題

構造 NextDate 問題的弱一般的等價類測試用例。

  • NextDate 問題:NextDate() 是整型變量 month, day 和 year 的函數,輸入 1812-2012 年期間的某一日期的 month, day 和 year 的值,輸出這一天的下一天的日期的 month, day 和 year 值。

概念

弱一般等價類測試用例覆蓋:針對單缺陷,只覆蓋有效等價類

解答

三個變量的取值範圍

  • C1: 1 ≤ month ≤ 12
  • C2: 1 ≤ day ≤ 31
  • C3: 1812 ≤ year ≤ 2012

可以劃分爲以下等價類集合

  • M1 = {month: month has 30 days}
  • M2 = {month: month has 31 days except December}
  • M3 = {month: month is December}
  • M4 = {month: month is February}
  • D1 = {day: 1 ≤ day ≤ 27}
  • D2 = {day: day = 28}
  • D3 = {day: day = 29}
  • D4 = {day: day = 30}
  • D5 = {day: day = 31}
  • Y1 = {year: year is a leap year}
  • Y2 = {year: year is a common year}

可劃分爲10個弱一般等價類(除去了無效的等價類),爲其設計測試用例如下表格所示

  • R1 = {M1, {D1, D2, D3}, {Y1, Y2}}
  • R2 = {M1, D4, {Y1, Y2}}
  • R3 = {M2, {D1, D2, D3, D4}, {Y1, Y2}}
  • R4 = {M2, D5, {Y1, Y2}}
  • R5 = {M3, {D1, D2, D3, D4}, {Y1, Y2}}
  • R6 = {M3, D5, {Y1, Y2}}
  • R7 = {M4, D1, {Y1, Y2}}
  • R8 = {M4, D2, Y1}
  • R9 = {M4, D2, Y2}
  • R10 = {M4, D3, Y1}

弱一般等價測試用例

測試用例 year month day 期待輸出
WN1 2009 04 25 2009/04/26
WN2 2009 04 30 2009/05/01
WN3 2009 03 25 2009/03/26
WN4 2009 03 7 2009/04/01
WN5 2009 12 25 2009/12/26
WN6 2009 12 31 2010/01/01
WN7 2009 02 25 2009/02/26
WN8 2008 02 28 2008/02/29
WN9 2009 02 28 2009/03/01
WN10 2008 02 29 2008/03/01
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章