ﺑﻪ ﻧﺎم ﺧﺪا
داﻧﺸﻜﺪه ﻣﻬﻨﺪﺳﻲ ﻛﺎﻣﭙﻴﻮﺗﺮ داﻧﺸﮕﺎه ﺻﻨﻌﺘﻲ ﺷﺮﻳﻒ
درس آزﻣﻮن ﻧﺮم اﻓﺰار – ﻧﻴﻤﺴﺎل اول 91-92
ﺗﻤﺮﻳﻦ اول
ﻣﻮﻋﺪ ﺗﺤﻮﻳﻞ 06آذر 1391
(1ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﺑﺮﻧﺎﻣﻪ زﻳﺮ ،ﺑﻪ ﺳﻮاﻻت ﭘﺎﺳﺦ دﻫﻴﺪ:
• ﺗﻮﺟﻪ :ﺑﺮاي ﺗﻤﺎم ﻣﺜﺎلﻫﺎ از ﻣﺠﻤﻮﻋﻪ } {-8,-5,-3,0,3,5,8اﺳﺘﻔﺎده ﻛﻨﻴﺪ.
) Fault (aرا ﻣﺸﺨﺺ و ﺗﺮﻣﻴﻢ ﻛﻨﻴﺪ.
) (bﺑﺮاي ﭼﻪ ﻣﻘﺎدﻳﺮي از sﻧﺘﻴﺠﻪ آزﻣﻮن failureاﺳﺖ؟ ﺑﺎﻣﺜﺎﻟﻲ ﻧﺘﻴﺠﻪ ﻣﻮرد اﻧﺘﻈﺎر و ﻧﺘﻴﺠﻪ اﻳﻦ ﺑﺮﻧﺎﻣﻪ را ﻧﺸﺎن
دﻫﻴﺪ.
) (cﺑﺮاي ﭼﻪ ﻣﻘﺎدﻳﺮي از sآزﻣﻮن ﺑﺮﻧﺎﻣﻪ faultرا اﺟﺮا ﻧﻤﻲ ﻛﻨﺪ؟
) (dﺑﺮاي ﭼﻪ ﻣﻘﺎدﻳﺮي از sآزﻣﻮن ﺑﺮﻧﺎﻣﻪ faultرا اﺟﺮاﻣﻴﻜﻨﺪ اﻣﺎ ﻧﺘﻴﺠﻪ آﻧﭽﻪ درﺣﺎﻻت ﻣﻴﺎﻧﻲ وﭼﻪ درﺣﺎﻟﺖ ﭘﺎﻳﺎﻧﻲ
ﻣﺸﺨﺺ ﻛﻨﻨﺪه ﺣﺎﻟﺖ ﻏﻠﻂ ﻧﻴﺴﺖ؟
) (eﺑﺮاي ﭼﻪ ﻣﻘﺎدﻳﺮي از sﺑﺮﻧﺎﻣﻪ در ﺣﺎﻻت ﻣﻴﺎﻧﻲ errorاﺳﺖ اﻣﺎ در ﻧﻬﺎﻳﺖ failureﻧﻴﺴﺖ؟ ﺑﺎﻣﺜﺎﻟﻲ ﻧﺘﻴﺠﻪ اﻳﻦ
ﺑﺮﻧﺎﻣﻪ دراوﻟﻴﻦ ﺣﺎﻟﺖ ﻣﻴﺎﻧﻲ ﻏﻠﻂ را ﺑﺎ ﻧﺘﻴﺠﻪ ﻣﻮرد اﻧﺘﻈﺎر درآﻧﺤﺎﻟﺖ ﻣﻴﺎﻧﻲ ﻣﻘﺎﻳﺴﻪ ﻛﻨﻴﺪ.
(2ﻗﺴﻤﺖ 2.4ﻣﺴﺌﻠﻪ 3
(3ﺑﺮاي ﺑﺮﻧﺎﻣﻪ اول ﮔﺮوه ﺧﻮد ،ﺑﻪ ازاي ﻫﺮ ﻳﻚ از ﭘﻮﺷﺶﻫﺎي
• )Edge Coverage (EPC
• )Prime Path Coverage (PPC
• )All Uses Coverage(AUC
ﻣﺮاﺣﻞ زﻳﺮ را اﻧﺠﺎم دﻫﻴﺪ:
) (aاﺳﺘﺨﺮاج ﮔﺮاف EPC (Control Flow Graph) CFGو PPCو ﮔﺮاف Data Flow Graphﺑﺮاي AUC
) (bاﺳﺘﺨﺮاج ﻧﻴﺎزﻣﻨﺪي ﻫﺎي آزﻣﻮن.
• در اﺳﺘﺨﺮاج ﻧﻴﺎزﻣﻨﺪيﻫﺎي آزﻣﻮن ﻣﺮﺑﻮط ﺑﻪ ،PPCﻣﺤﺎﺳﺒﻪ دﺳﺘﻲ ﺗﺎ ﺳﻄﺢ ) 8ﻣﺴﻴﺮﻫﺎي ﺳﺎده ﺑﻪ ﻃﻮل (8
ﻛﺎﻓﻲ ﺧﻮاﻫﺪ ﺑﻮد و ﺑﺮاي ﻧﻴﺎزﻣﻨﺪيﻫﺎي ﻧﻬﺎﻳﻲ آزﻣﻮن ﻣﻲ ﺗﻮاﻧﻴﺪ از اﺑﺰار ﻣﻮﺟﻮد در ﺳﺎﻳﺖ ﻛﺘﺎب درس اﺳﺘﻔﺎده
ﻧﻤﺎﻳﻴﺪ .ﻧﻴﺎزﻣﻨﺪﻳﻬﺎي آزﻣﻮن ﻧﻬﺎﻳﻲ و ﻃﺮﻳﻘﻪ ﺑﺪﺳﺖ آوردن آﻧﻬﺎ راﺑﻪ ﻃﻮر ﻛﺎﻣﻞ در ﭘﺎﺳﺦ ﺧﻮد ذﻛﺮ ﻛﻨﻴﺪ.
) (cﻃﺮاﺣﻲ ﻣﻮارد آزﻣﻮن ﺑﺮاي ﭘﻮﺷﺶ ﻧﻴﺎزﻣﻨﺪي ﻫﺎي آزﻣﻮن و ﻣﺸﺨﺺ ﻛﺮدن اﻳﻨﻜﻪ ﻫﺮ ﻣﻮرد آزﻣﻮن ،ﭼﻪ ﻧﻴﺎزﻣﻨﺪي
ﻫﺎي آزﻣﻮﻧﻲ را ﭘﻮﺷﺶ ﻣﻲ دﻫﺪ.
• ﺑﺮاي ﻫﺮ ﻣﻌﻴﺎر آزﻣﻮن ،ﺑﺪﺳﺖ آوردن 15ﻣﻮرد آزﻣﻮن ﻛﻪ اﻟﺒﺘﻪ ﻫﺮ ﻛﺪام ،ﺗﻌﺪادي ﻧﻴﺎزﻣﻨﺪي آزﻣﻮن ﺟﺪﻳﺪ
)ﻏﻴﺮ از آﻧﭽﻪ ﺗﻮﺳﻂ ﺳﺎﻳﺮ ﻣﻮارد آزﻣﻮن ﭘﻮﺷﺶ داده ﻣﻴﺸﻮد( را ﭘﻮﺷﺶ دﻫﻨﺪ ،ﻛﻔﺎﻳﺖ ﻣﻴﻜﻨﺪ.
) (dﻣﺸﺨﺺ ﻛﺮدن ﻧﻴﺎزﻣﻨﺪي ﻫﺎي آزﻣﻮن ﻏﻴﺮﻣﻤﻜﻦ)(infeasible
• ﻧﺸﺎن دادن دو ﻣﻮرد از ﻧﻴﺎزﻣﻨﺪﻳﻬﺎي آزﻣﻮن ﻏﻴﺮﻣﻤﻜﻦ ،ﻛﺎﻓﻲ ﻣﻲ ﺑﺎﺷﺪ .در ﻛﻞ اﻳﻦ ﻣﺴﺌﻠﻪ ،ﻣﺴﺌﻠﻪاي
Undecidableاﺳﺖ اﻣﺎ ﺑﺮاي ﺑﺮﻧﺎﻣﻪ ﻫﺎي ﻛﻮﭼﻚ ،ﺑﺎ اﺳﺘﺪﻻل ﻣﻴﺘﻮان ﺗﺎ ﺣﺪ ﺧﻮﺑﻲ ﻏﻴﺮﻣﻤﻜﻦ ﺑﻮدن ﭘﻮﺷﺶ
ﻳﻚ ﻧﻴﺎزﻣﻨﺪي آزﻣﻮن را ﻧﺸﺎن داد.
) (eﺗﻌﻴﻴﻦ ﻧﺘﻴﺠﻪ ﻣﻮرد اﻧﺘﻈﺎر ﺑﺮاي ﻫﺮ ﻣﻮرد آزﻣﻮن
) (fاﺟﺮاي ﻣﻮارد آزﻣﻮن ﺑﺮ روي ﺑﺮﻧﺎﻣﻪ ﺗﺤﺖ آزﻣﻮن و ﺛﺒﺖ ﻧﺘﺎﻳﺞ ﺑﺪﺳﺖ آﻣﺪه
• ﺗﺮﺟﻴﺤﺎ ﺑﺎ اﺳﺘﻔﺎده از ﭼﺎرﭼﻮب .JUnit
) (gﻣﻘﺎﻳﺴﻪ ﻧﺘﺎﻳﺞ ﺑﺪﺳﺖ آﻣﺪه و ﻧﺘﺎﻳﺞ ﻣﻮرد اﻧﺘﻈﺎر و ﮔﺰارش ﺧﻄﺎﻫﺎي اﺣﺘﻤﺎﻟﻲ ﻳﺎﻓﺖ ﺷﺪه در ﺑﺮﻧﺎﻣﻪ
• ﺗﻤﺮﻳﻦ ﻫﺎ ﺑﻪ ﺻﻮرت ﮔﺮوﻫﻲ اﺳﺖ )ﻣﻄﺎﺑﻖ ﮔﺮو هﻫﺎي ﻣﺸﺨﺺ ﺷﺪه(
• ﭘﺎﺳﺦ ﺗﻤﺮﻳﻦ ﻫﺎ ﻣﻲ ﺑﺎﻳﺴﺖ ﺗﺎﻳﭗ ﺷﺪه و درﻛﻼس درس ﺑﻪ ﺻﻮرت ﭘﺮﻳﻨﺖ ﺷﺪه ،ﺑﻪ اﺳﺘﺎد ﺗﺤﻮﻳﻞ ﮔﺮدد .ﻫﻤﭽﻨﻴﻦ
ﻧﺴﺨﻪ اﻟﻜﺘﺮوﻧﻴﻜﻲ آن را ﺑﻪ آدرس [email protected]ارﺳﺎل ﻧﻤﺎﺋﻴﺪ.
• آﺧﺮﻳﻦ ﺗﺎرﻳﺦ ﺗﺤﻮﻳﻞ ﺗﻤﺮﻳﻦﻫﺎ 6 ،آذر ﻣﻲ ﺑﺎﺷﺪ .ﺗﻤﺮﻳﻦﻫﺎﻳﻲ ﻛﻪ دﻳﺮﺗﺮ از ﻣﻮﻋﺪ ﺗﺤﻮﻳﻞ داده ﺷﻮﻧﺪ ،ﻣﺸﻤﻮل ﻛﺴﺮ
ﻧﻤﺮه ﺧﻮاﻫﻨﺪ ﺷﺪ .ﻟﺬا ﺳﻌﻲ ﻛﻨﻴﺪ اﻧﺠﺎم ﺗﻤﺮﻳﻦ را ﺗﺎ روزﻫﺎي ﭘﺎﻳﺎﻧﻲ ﺑﻪ ﺗﺎﺧﻴﺮ ﻧﻴﺎﻧﺪازﻳﺪ.
• ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ اﻳﻨﻜﻪ ﻓﺮﺻﺖ ارﺳﺎل ﺑﺮﻧﺎﻣﻪﻫﺎي ﮔﺮوه ﻫﺎ ﺑﻪ اﺗﻤﺎم رﺳﻴﺪه اﺳﺖ ،در ﺻﻮرﺗﻲ ﻛﻪ ﺑﺮﻧﺎﻣﻪ ﻫﺎي ﺧﻮد را
ﺗﺎﻛﻨﻮن ﺗﻌﻴﻴﻦ ﻧﻜﺮده اﻳﺪ ،ﻫﺮ ﭼﻪ زودﺗﺮ اﻗﺪام ﻧﻤﺎﺋﻴﺪ ﺗﺎ در اﻧﺠﺎم ﺗﻤﺮﻳﻦ ﺑﺎ ﻣﺸﻜﻞ ﻣﻮاﺟﻪ ﻧﺸﻮﻳﺪ.
ﻣﻮﻓﻖ و ﻣﻮﻳﺪ ﺑﺎﺷﻴﺪ
© Copyright 2026 Paperzz