SlideShare uma empresa Scribd logo
1 de 26
Baixar para ler offline
ซอฟต์แวร์มีหลายมิต	
                  ิ
มิติง่ายๆ
Functional Test Scenario &
                 Test Case
Non-Functional Test Scenario
                 & Test Case
Test Case
Traceability
Architecture Test Cases
Test Driven Development
                      4




    1                         5
         5    5

                          3
2




                  4
จะ Test อะไรกันดี????
จะ Test อะไรกันดี????
Attribute Refinements (Attributes
               of System Quality)
เทคนิคตีความ
•    ช่วงเวลา =          Availability
•    ความเร็ว/ปริมาณ                   =      Performance
•    อนาคตจะมีผู้ใช้/ฟังก์ชั่น/เซอร์วิสเพิ่ม =      Scalability
•    มีส่วนที่ต้องปรับปรุง/แก้ไข/เพิ่มเติมได้ =
           Modifiability
•    ซีเรียสเรื่องการเข้าใช้งาน/เข้าถึงข้อมูล =     Security
•    หน้าจอซับซ้อน/ผู้ใช้หลากหลาย             =     Usability
•    ต้องเชื่อมต่อกับ External Resources            =
           Integrability
•    External Resources หลากหลาย                    =
           Interoperability
•    มีการแลกเปลี่ยนข้อมูล/import/export/migrate =
           Portability
Simulate Test Environment for
           “Test Architecture”
Quality Scenarios
Non-Functional Test Case
Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘easy	
  use’	
  of	
  cri<cal	
  form	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบว่าแบบฟอร์มสําคัญของระบบต้องใช้งานง่าย	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Usability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: 80% ของผู้ใช้ทั้งหมด ให้คะแนนความง่ายไม่ต่ํากว่า	
  80 คะแนน	
No.	
                                        Ac6vity	
                               Pass?	
      Fail?	
     Remark/Condi6on	
1.	


Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘handling	
  load’	
  of	
  withdraw	
  request	
  (16:00	
  –	
  18:00)	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบว่าระบบ Core	
  Bank	
  System รองรับโหลด	
  request ‘ถอนเงิน’	
  ในช่วงเวลา	
  
16:00-­‐18:00	
  ได้	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Performance	
  +	
  Availability	
  +	
  Reliability	
Required	
  Input	
  /	
  Test	
  Data: จํานวนตู้ทั้งหมด	
  1,500 ตู้ทั่วประเทศ	

Expected	
  Output	
  /	
  Outcome: รองรับ	
  Request ‘ถอนเงิน’	
  ได้ 40	
  request/ตู้/ช.ม. ช่วงเวลา	
  
16:00-­‐18:00
Non-Functional Test Case
Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘avg	
  response	
  <me’	
  aTer	
  service	
  increased	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบว่าค่า	
  response	
  <me เฉลี่ยของทุก	
  TX ต้องเท่าเดิม แม้มีบริการเพิ่มขึ้นภาย
หลัง	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Scalability	
  +	
  Performance	
  +	
  Reliability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: avg	
  response	
  <me	
  <=	
  X	
  วินาที	
  (+/-­‐	
  Y	
  วินาที) นับจาก	
  ATM	
  -­‐>	
  CBS	
  -­‐>	
  
ATM	
No.	
                                        Ac6vity	
                                      Pass?	
      Fail?	
          Remark/Condi6on	
1.
Quality Scenarios
Non-Functional Test Case
Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘scheduling’	
  of	
  load	
  balancer	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบการ	
  scheduling ของการ dispatch	
  request ไปยังเว็บเซิร์ฟเวอร์	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Performance	
  +	
  Reliability +	
  Availability	
  +	
  Scalability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: dispatch	
  ได้สม่ําเสมอ เป็นธรรม!	
  สมดุลกับ	
  resource ที่เหลือของเว็บ
เซิร์ฟเวอร์	
No.	
                                       Ac6vity	
                          Pass?	
     Fail?	
        Remark/Condi6on	
1.
Quality Scenarios
Non-Functional Test Case
Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘balance	
  of	
  stateless	
  object	
  crea<on’	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบ latency ในการสร้าง	
  stateless	
  object (เช่น XXXWebCMD และ
XXXBusinessService) ที่ต้องสมดุลกับปริมาณ	
  incoming	
  request	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Performance	
  +	
  Scalability	
  +	
  Availability	
  +	
  Reliability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: เมื่อ	
  client	
  request มาถึงอ็อบเจ็คต์ที่ต้องการใช้	
  (a) ต้องใช้เวลาไม่เกิน	
  
x	
  ms ในการสร้างและเตรียมจน client	
  request ได้เริ่มใช้	
  (b)	
  ตัวอย่างสมการ	
  b	
  –	
  a	
  <=	
  x	
  ms	
No.	
                                       Ac6vity	
                                  Pass?	
   Fail?	
       Remark/Condi6on	
1.	

Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘offline	
  locking	
  strategy’	
  of	
  shared	
  resource	
  (MFU)	
  for	
  upexpected	
  TX	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบการเข้าถึง	
  shared	
  resource ที่ถูกเข้าถึงบ่อยๆ โดย	
  TX คาดการณ์ไม่ได้ว่าจะ	
  
commit เมื่อไหร่	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Availability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: offline	
  locking	
  strategy ต้องเป็น	
  op<mis<c	
  lock	
No.	
                                       Ac6vity	
                                  Pass?	
   Fail?	
       Remark/Condi6on
Quality Scenarios
Non-Functional Test Case
Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  size	
  of	
  ‘unwanted’	
  data	
  sending	
  from	
  service	
  to	
  client	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบการขนาดข้อมูลที่ส่งจากเซอร์วิสกลับไปยังไคลเอ็นต์ ซึ่งเป็นข้อมูลส่วนที่
ไคลเอ็นต์ไม่ต้องการใช้	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Performance	
  +	
  Availability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: size	
  of	
  unwanted	
  data	
  =	
  0	
  byte!	
No.	
                                       Ac6vity	
                                   Pass?	
     Fail?	
         Remark/Condi6on	
1.	

Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘Data	
  Source’s configura<on’	
  modifica<on	
  online	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบการแก้ไขค่าคอนฟิกฯ ของ	
  Data	
  Source ขณะออนไลน์ โดยไม่ต้อง	
  
shutdown	
  system	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Modifiability	
  +	
  Availability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: repair	
  <me	
  =	
  0	
  วินาที	
No.	
                                       Ac6vity	
                                   Pass?	
     Fail?	
         Remark/Condi6on
Non-Functional Test Case
Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘evic<on’	
  of	
  LRU	
  resource	
  in	
  pool	
  and	
  cache	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบการ ‘เคลียร์’ resource ที่ไม่ค่อยได้ใช้ออกจาก	
  pool และ	
  cache	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Performance	
  +	
  Availability +	
  Scalability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: evict/passivate/swap	
  out/delete/serialize	
  ทันทีเมื่อ	
  resource นั้น
ครบ	
  idle	
  <me	
  out ตามที่คอนฟิกฯ ไว้	
No.	
                                       Ac6vity	
                                   Pass?	
       Fail?	
   Remark/Condi6on	
1.
Non-Functional Test Case
Test	
  Case	
  ID:	
  XXX	
  
Test	
  Case	
  Name:	
  Test	
  ‘evic<on’	
  of	
  LRU	
  resource	
  in	
  pool	
  and	
  cache	
Relevant	
  Requirement	
  IDs:	

Objec6ves:	
  เพื่อทดสอบการ ‘เคลียร์’ resource ที่ไม่ค่อยได้ใช้ออกจาก	
  pool และ	
  cache	
Approaches:	
  Non-­‐Func6onal	
  Test:	
  Performance	
  +	
  Availability +	
  Scalability	
Required	
  Input	
  /	
  Test	
  Data:	

Expected	
  Output	
  /	
  Outcome: evict/passivate/swap	
  out/delete/serialize	
  ทันทีเมื่อ	
  resource นั้น
ครบ	
  idle	
  <me	
  out ตามที่คอนฟิกฯ ไว้	
No.	
                                       Ac6vity	
                                   Pass?	
       Fail?	
   Remark/Condi6on	
1.

Mais conteúdo relacionado

Mais procurados

งานนำเสนอ Linux
งานนำเสนอ  Linuxงานนำเสนอ  Linux
งานนำเสนอ Linuxjamiezaa123
 
TKCT Bến cầu tàu đài mềm
TKCT Bến cầu tàu đài mềmTKCT Bến cầu tàu đài mềm
TKCT Bến cầu tàu đài mềmHieu Le
 
ỨNG DỤNG KỸ THUẬT HỌC SÂU TRONG CHẨN ĐOÁN BỆNH NGOÀI DA ceb245a4
ỨNG DỤNG KỸ THUẬT HỌC SÂU TRONG CHẨN ĐOÁN BỆNH NGOÀI DA ceb245a4ỨNG DỤNG KỸ THUẬT HỌC SÂU TRONG CHẨN ĐOÁN BỆNH NGOÀI DA ceb245a4
ỨNG DỤNG KỸ THUẬT HỌC SÂU TRONG CHẨN ĐOÁN BỆNH NGOÀI DA ceb245a4nataliej4
 
ความรู้เบื้องต้นเกี่ยวกับการตัดต่อภาพยนตร์
ความรู้เบื้องต้นเกี่ยวกับการตัดต่อภาพยนตร์ ความรู้เบื้องต้นเกี่ยวกับการตัดต่อภาพยนตร์
ความรู้เบื้องต้นเกี่ยวกับการตัดต่อภาพยนตร์ ณัฐพล บัวพันธ์
 
ความรู้ทั่วไปเรื่องโรคของเต้านม
ความรู้ทั่วไปเรื่องโรคของเต้านมความรู้ทั่วไปเรื่องโรคของเต้านม
ความรู้ทั่วไปเรื่องโรคของเต้านมthaibreastcancer
 
Owncloud - cloud solution for SME
Owncloud - cloud solution for SMEOwncloud - cloud solution for SME
Owncloud - cloud solution for SMEMichael Phan
 
Tải giáo trình autocad 2018 tiếng Việt full bản chuẩn nhất 2020
Tải giáo trình autocad 2018 tiếng Việt full bản chuẩn nhất 2020Tải giáo trình autocad 2018 tiếng Việt full bản chuẩn nhất 2020
Tải giáo trình autocad 2018 tiếng Việt full bản chuẩn nhất 2020distributionCMC
 
BÀI GIẢNG SOLIDWORKS cơ bản đến nâng cao
BÀI GIẢNG SOLIDWORKS cơ bản đến nâng caoBÀI GIẢNG SOLIDWORKS cơ bản đến nâng cao
BÀI GIẢNG SOLIDWORKS cơ bản đến nâng caoCNC khac da
 
โครงงานตัดต่อวีดีโอ
โครงงานตัดต่อวีดีโอโครงงานตัดต่อวีดีโอ
โครงงานตัดต่อวีดีโอManussawee Rattana
 
Thuyết minh hiếu "đồ án công nghệ chế tạo máy"
Thuyết minh hiếu "đồ án công nghệ chế tạo máy"Thuyết minh hiếu "đồ án công nghệ chế tạo máy"
Thuyết minh hiếu "đồ án công nghệ chế tạo máy"Hiếu Ckm Spkt
 
Bài tập công nghệ phần mềm
Bài tập công nghệ phần mềmBài tập công nghệ phần mềm
Bài tập công nghệ phần mềmLượng Võ Đại
 
Báo cáo system hacking
Báo cáo system hackingBáo cáo system hacking
Báo cáo system hackingHuynh Khang
 
การเลือกซื้ออุปกรณ์คอมพิวเตอร์และอุปกรณ์ต่อ
การเลือกซื้ออุปกรณ์คอมพิวเตอร์และอุปกรณ์ต่อการเลือกซื้ออุปกรณ์คอมพิวเตอร์และอุปกรณ์ต่อ
การเลือกซื้ออุปกรณ์คอมพิวเตอร์และอุปกรณ์ต่อKrupreecha Krubaannok
 
Giáo trình Solidwork toàn tập
Giáo trình Solidwork toàn tậpGiáo trình Solidwork toàn tập
Giáo trình Solidwork toàn tậpCNC khac da
 
CÔNG NGHỆ IN 3D CHO NGANH NHUA_26-9.ppt
CÔNG NGHỆ IN 3D CHO NGANH NHUA_26-9.pptCÔNG NGHỆ IN 3D CHO NGANH NHUA_26-9.ppt
CÔNG NGHỆ IN 3D CHO NGANH NHUA_26-9.pptLongGia14
 

Mais procurados (20)

Luận văn: Lập trình game trên thiết bị di động, HAY
Luận văn: Lập trình game trên thiết bị di động, HAYLuận văn: Lập trình game trên thiết bị di động, HAY
Luận văn: Lập trình game trên thiết bị di động, HAY
 
Chuong 2. cnpm
Chuong 2. cnpmChuong 2. cnpm
Chuong 2. cnpm
 
งานนำเสนอ Linux
งานนำเสนอ  Linuxงานนำเสนอ  Linux
งานนำเสนอ Linux
 
TKCT Bến cầu tàu đài mềm
TKCT Bến cầu tàu đài mềmTKCT Bến cầu tàu đài mềm
TKCT Bến cầu tàu đài mềm
 
ỨNG DỤNG KỸ THUẬT HỌC SÂU TRONG CHẨN ĐOÁN BỆNH NGOÀI DA ceb245a4
ỨNG DỤNG KỸ THUẬT HỌC SÂU TRONG CHẨN ĐOÁN BỆNH NGOÀI DA ceb245a4ỨNG DỤNG KỸ THUẬT HỌC SÂU TRONG CHẨN ĐOÁN BỆNH NGOÀI DA ceb245a4
ỨNG DỤNG KỸ THUẬT HỌC SÂU TRONG CHẨN ĐOÁN BỆNH NGOÀI DA ceb245a4
 
ความรู้เบื้องต้นเกี่ยวกับการตัดต่อภาพยนตร์
ความรู้เบื้องต้นเกี่ยวกับการตัดต่อภาพยนตร์ ความรู้เบื้องต้นเกี่ยวกับการตัดต่อภาพยนตร์
ความรู้เบื้องต้นเกี่ยวกับการตัดต่อภาพยนตร์
 
ความรู้ทั่วไปเรื่องโรคของเต้านม
ความรู้ทั่วไปเรื่องโรคของเต้านมความรู้ทั่วไปเรื่องโรคของเต้านม
ความรู้ทั่วไปเรื่องโรคของเต้านม
 
Owncloud - cloud solution for SME
Owncloud - cloud solution for SMEOwncloud - cloud solution for SME
Owncloud - cloud solution for SME
 
Đề tài: Xây dựng hệ thống Chatbots tự động, HAY, 9đ
Đề tài: Xây dựng hệ thống Chatbots tự động, HAY, 9đĐề tài: Xây dựng hệ thống Chatbots tự động, HAY, 9đ
Đề tài: Xây dựng hệ thống Chatbots tự động, HAY, 9đ
 
Tải giáo trình autocad 2018 tiếng Việt full bản chuẩn nhất 2020
Tải giáo trình autocad 2018 tiếng Việt full bản chuẩn nhất 2020Tải giáo trình autocad 2018 tiếng Việt full bản chuẩn nhất 2020
Tải giáo trình autocad 2018 tiếng Việt full bản chuẩn nhất 2020
 
BÀI GIẢNG SOLIDWORKS cơ bản đến nâng cao
BÀI GIẢNG SOLIDWORKS cơ bản đến nâng caoBÀI GIẢNG SOLIDWORKS cơ bản đến nâng cao
BÀI GIẢNG SOLIDWORKS cơ bản đến nâng cao
 
โครงงานตัดต่อวีดีโอ
โครงงานตัดต่อวีดีโอโครงงานตัดต่อวีดีโอ
โครงงานตัดต่อวีดีโอ
 
Thuyết minh hiếu "đồ án công nghệ chế tạo máy"
Thuyết minh hiếu "đồ án công nghệ chế tạo máy"Thuyết minh hiếu "đồ án công nghệ chế tạo máy"
Thuyết minh hiếu "đồ án công nghệ chế tạo máy"
 
Bài tập công nghệ phần mềm
Bài tập công nghệ phần mềmBài tập công nghệ phần mềm
Bài tập công nghệ phần mềm
 
Báo cáo system hacking
Báo cáo system hackingBáo cáo system hacking
Báo cáo system hacking
 
การเลือกซื้ออุปกรณ์คอมพิวเตอร์และอุปกรณ์ต่อ
การเลือกซื้ออุปกรณ์คอมพิวเตอร์และอุปกรณ์ต่อการเลือกซื้ออุปกรณ์คอมพิวเตอร์และอุปกรณ์ต่อ
การเลือกซื้ออุปกรณ์คอมพิวเตอร์และอุปกรณ์ต่อ
 
Giáo trình Solidwork toàn tập
Giáo trình Solidwork toàn tậpGiáo trình Solidwork toàn tập
Giáo trình Solidwork toàn tập
 
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOTLuận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
 
Value stream mapping
Value stream mappingValue stream mapping
Value stream mapping
 
CÔNG NGHỆ IN 3D CHO NGANH NHUA_26-9.ppt
CÔNG NGHỆ IN 3D CHO NGANH NHUA_26-9.pptCÔNG NGHỆ IN 3D CHO NGANH NHUA_26-9.ppt
CÔNG NGHỆ IN 3D CHO NGANH NHUA_26-9.ppt
 

Mais de Prathan Dansakulcharoenkit

QA Talk in Chiang Mai Community of Practice Meet Up 1/2017
QA Talk in Chiang Mai Community of Practice Meet Up 1/2017QA Talk in Chiang Mai Community of Practice Meet Up 1/2017
QA Talk in Chiang Mai Community of Practice Meet Up 1/2017Prathan Dansakulcharoenkit
 
IMC Monthly Talk: 10 ข้อที่ควรจะต้องทำในการเริ่มต้นนำ Agile for Software Deve...
IMC Monthly Talk: 10 ข้อที่ควรจะต้องทำในการเริ่มต้นนำ Agile for Software Deve...IMC Monthly Talk: 10 ข้อที่ควรจะต้องทำในการเริ่มต้นนำ Agile for Software Deve...
IMC Monthly Talk: 10 ข้อที่ควรจะต้องทำในการเริ่มต้นนำ Agile for Software Deve...Prathan Dansakulcharoenkit
 
อไจล์ ๑๐๑ รุ่น ๓.๐
อไจล์ ๑๐๑ รุ่น ๓.๐อไจล์ ๑๐๑ รุ่น ๓.๐
อไจล์ ๑๐๑ รุ่น ๓.๐Prathan Dansakulcharoenkit
 
Web Application Security Testing - Aware in BugDay Bangkok 2012
Web Application Security Testing - Aware in BugDay Bangkok 2012Web Application Security Testing - Aware in BugDay Bangkok 2012
Web Application Security Testing - Aware in BugDay Bangkok 2012Prathan Dansakulcharoenkit
 
The audacity of quality requirement-non functional testing- Aware in BugDay B...
The audacity of quality requirement-non functional testing- Aware in BugDay B...The audacity of quality requirement-non functional testing- Aware in BugDay B...
The audacity of quality requirement-non functional testing- Aware in BugDay B...Prathan Dansakulcharoenkit
 
How to live with agile - Aware in BugDay Bangkok 2012
How to live with agile - Aware in BugDay Bangkok 2012How to live with agile - Aware in BugDay Bangkok 2012
How to live with agile - Aware in BugDay Bangkok 2012Prathan Dansakulcharoenkit
 
Achieving Zero Defect with Agile Methods BugDay Bangkok 2012 โดย Varokas Pan...
Achieving Zero Defect with Agile Methods BugDay Bangkok 2012  โดย Varokas Pan...Achieving Zero Defect with Agile Methods BugDay Bangkok 2012  โดย Varokas Pan...
Achieving Zero Defect with Agile Methods BugDay Bangkok 2012 โดย Varokas Pan...Prathan Dansakulcharoenkit
 
Hyper Productivity BugDay Bangkok 2012 - โดย Chokchai Phatharamalai
Hyper Productivity BugDay Bangkok 2012 - โดย Chokchai Phatharamalai Hyper Productivity BugDay Bangkok 2012 - โดย Chokchai Phatharamalai
Hyper Productivity BugDay Bangkok 2012 - โดย Chokchai Phatharamalai Prathan Dansakulcharoenkit
 
Writing Effective Bug Report - BugDay Bangkok 2012
Writing Effective Bug Report - BugDay Bangkok 2012Writing Effective Bug Report - BugDay Bangkok 2012
Writing Effective Bug Report - BugDay Bangkok 2012Prathan Dansakulcharoenkit
 
Test Case and User Story - BugDay Bangkok 2012
Test Case and User Story - BugDay Bangkok 2012Test Case and User Story - BugDay Bangkok 2012
Test Case and User Story - BugDay Bangkok 2012Prathan Dansakulcharoenkit
 

Mais de Prathan Dansakulcharoenkit (20)

QA Talk in Chiang Mai Community of Practice Meet Up 1/2017
QA Talk in Chiang Mai Community of Practice Meet Up 1/2017QA Talk in Chiang Mai Community of Practice Meet Up 1/2017
QA Talk in Chiang Mai Community of Practice Meet Up 1/2017
 
IMC Monthly Talk: 10 ข้อที่ควรจะต้องทำในการเริ่มต้นนำ Agile for Software Deve...
IMC Monthly Talk: 10 ข้อที่ควรจะต้องทำในการเริ่มต้นนำ Agile for Software Deve...IMC Monthly Talk: 10 ข้อที่ควรจะต้องทำในการเริ่มต้นนำ Agile for Software Deve...
IMC Monthly Talk: 10 ข้อที่ควรจะต้องทำในการเริ่มต้นนำ Agile for Software Deve...
 
PROJECT MANAGEMENT TRAINING 09-22-2011
PROJECT MANAGEMENT TRAINING 09-22-2011PROJECT MANAGEMENT TRAINING 09-22-2011
PROJECT MANAGEMENT TRAINING 09-22-2011
 
tpse-sprint3r-software-testing-you-know-maybe
tpse-sprint3r-software-testing-you-know-maybetpse-sprint3r-software-testing-you-know-maybe
tpse-sprint3r-software-testing-you-know-maybe
 
SPRINT3R-SWPSDLC2556-CLOSING
SPRINT3R-SWPSDLC2556-CLOSINGSPRINT3R-SWPSDLC2556-CLOSING
SPRINT3R-SWPSDLC2556-CLOSING
 
Introduction to Scrum version 3.1
Introduction to Scrum version 3.1Introduction to Scrum version 3.1
Introduction to Scrum version 3.1
 
SPRINT3R-MY-CITY
SPRINT3R-MY-CITYSPRINT3R-MY-CITY
SPRINT3R-MY-CITY
 
อไจล์ ๑๐๑ รุ่น ๓.๐
อไจล์ ๑๐๑ รุ่น ๓.๐อไจล์ ๑๐๑ รุ่น ๓.๐
อไจล์ ๑๐๑ รุ่น ๓.๐
 
Geek Academy Introduction to Agile
Geek Academy Introduction to AgileGeek Academy Introduction to Agile
Geek Academy Introduction to Agile
 
Sprint3 r agile101-introduction-18052556
Sprint3 r agile101-introduction-18052556Sprint3 r agile101-introduction-18052556
Sprint3 r agile101-introduction-18052556
 
hello-my-name-is-software-testing-v2-pdf
hello-my-name-is-software-testing-v2-pdfhello-my-name-is-software-testing-v2-pdf
hello-my-name-is-software-testing-v2-pdf
 
Opening Session of BugDay Bangkok 2012
Opening Session of BugDay Bangkok 2012Opening Session of BugDay Bangkok 2012
Opening Session of BugDay Bangkok 2012
 
Web Application Security Testing - Aware in BugDay Bangkok 2012
Web Application Security Testing - Aware in BugDay Bangkok 2012Web Application Security Testing - Aware in BugDay Bangkok 2012
Web Application Security Testing - Aware in BugDay Bangkok 2012
 
The audacity of quality requirement-non functional testing- Aware in BugDay B...
The audacity of quality requirement-non functional testing- Aware in BugDay B...The audacity of quality requirement-non functional testing- Aware in BugDay B...
The audacity of quality requirement-non functional testing- Aware in BugDay B...
 
How to live with agile - Aware in BugDay Bangkok 2012
How to live with agile - Aware in BugDay Bangkok 2012How to live with agile - Aware in BugDay Bangkok 2012
How to live with agile - Aware in BugDay Bangkok 2012
 
Achieving Zero Defect with Agile Methods BugDay Bangkok 2012 โดย Varokas Pan...
Achieving Zero Defect with Agile Methods BugDay Bangkok 2012  โดย Varokas Pan...Achieving Zero Defect with Agile Methods BugDay Bangkok 2012  โดย Varokas Pan...
Achieving Zero Defect with Agile Methods BugDay Bangkok 2012 โดย Varokas Pan...
 
Hyper Productivity BugDay Bangkok 2012 - โดย Chokchai Phatharamalai
Hyper Productivity BugDay Bangkok 2012 - โดย Chokchai Phatharamalai Hyper Productivity BugDay Bangkok 2012 - โดย Chokchai Phatharamalai
Hyper Productivity BugDay Bangkok 2012 - โดย Chokchai Phatharamalai
 
Writing Effective Bug Report - BugDay Bangkok 2012
Writing Effective Bug Report - BugDay Bangkok 2012Writing Effective Bug Report - BugDay Bangkok 2012
Writing Effective Bug Report - BugDay Bangkok 2012
 
Test Case and User Story - BugDay Bangkok 2012
Test Case and User Story - BugDay Bangkok 2012Test Case and User Story - BugDay Bangkok 2012
Test Case and User Story - BugDay Bangkok 2012
 
Data, Information and Analyst
Data, Information and AnalystData, Information and Analyst
Data, Information and Analyst
 

ออกแบบ Test Cases เพื่อทำ Non-Functional Test โดย คุณณรงค์ จันทร์สร้อย

  • 1.
  • 2.
  • 10. Test Driven Development 4 1 5 5 5 3 2 4
  • 13. Attribute Refinements (Attributes of System Quality)
  • 14. เทคนิคตีความ •  ช่วงเวลา = Availability •  ความเร็ว/ปริมาณ = Performance •  อนาคตจะมีผู้ใช้/ฟังก์ชั่น/เซอร์วิสเพิ่ม = Scalability •  มีส่วนที่ต้องปรับปรุง/แก้ไข/เพิ่มเติมได้ = Modifiability •  ซีเรียสเรื่องการเข้าใช้งาน/เข้าถึงข้อมูล = Security •  หน้าจอซับซ้อน/ผู้ใช้หลากหลาย = Usability •  ต้องเชื่อมต่อกับ External Resources = Integrability •  External Resources หลากหลาย = Interoperability •  มีการแลกเปลี่ยนข้อมูล/import/export/migrate = Portability
  • 15. Simulate Test Environment for “Test Architecture”
  • 17. Non-Functional Test Case Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘easy  use’  of  cri<cal  form Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบว่าแบบฟอร์มสําคัญของระบบต้องใช้งานง่าย Approaches:  Non-­‐Func6onal  Test:  Usability Required  Input  /  Test  Data: Expected  Output  /  Outcome: 80% ของผู้ใช้ทั้งหมด ให้คะแนนความง่ายไม่ต่ํากว่า  80 คะแนน No. Ac6vity Pass? Fail? Remark/Condi6on 1. Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘handling  load’  of  withdraw  request  (16:00  –  18:00) Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบว่าระบบ Core  Bank  System รองรับโหลด  request ‘ถอนเงิน’  ในช่วงเวลา   16:00-­‐18:00  ได้ Approaches:  Non-­‐Func6onal  Test:  Performance  +  Availability  +  Reliability Required  Input  /  Test  Data: จํานวนตู้ทั้งหมด  1,500 ตู้ทั่วประเทศ Expected  Output  /  Outcome: รองรับ  Request ‘ถอนเงิน’  ได้ 40  request/ตู้/ช.ม. ช่วงเวลา   16:00-­‐18:00
  • 18. Non-Functional Test Case Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘avg  response  <me’  aTer  service  increased Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบว่าค่า  response  <me เฉลี่ยของทุก  TX ต้องเท่าเดิม แม้มีบริการเพิ่มขึ้นภาย หลัง Approaches:  Non-­‐Func6onal  Test:  Scalability  +  Performance  +  Reliability Required  Input  /  Test  Data: Expected  Output  /  Outcome: avg  response  <me  <=  X  วินาที  (+/-­‐  Y  วินาที) นับจาก  ATM  -­‐>  CBS  -­‐>   ATM No. Ac6vity Pass? Fail? Remark/Condi6on 1.
  • 20. Non-Functional Test Case Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘scheduling’  of  load  balancer Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบการ  scheduling ของการ dispatch  request ไปยังเว็บเซิร์ฟเวอร์ Approaches:  Non-­‐Func6onal  Test:  Performance  +  Reliability +  Availability  +  Scalability Required  Input  /  Test  Data: Expected  Output  /  Outcome: dispatch  ได้สม่ําเสมอ เป็นธรรม!  สมดุลกับ  resource ที่เหลือของเว็บ เซิร์ฟเวอร์ No. Ac6vity Pass? Fail? Remark/Condi6on 1.
  • 22. Non-Functional Test Case Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘balance  of  stateless  object  crea<on’ Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบ latency ในการสร้าง  stateless  object (เช่น XXXWebCMD และ XXXBusinessService) ที่ต้องสมดุลกับปริมาณ  incoming  request Approaches:  Non-­‐Func6onal  Test:  Performance  +  Scalability  +  Availability  +  Reliability Required  Input  /  Test  Data: Expected  Output  /  Outcome: เมื่อ  client  request มาถึงอ็อบเจ็คต์ที่ต้องการใช้  (a) ต้องใช้เวลาไม่เกิน   x  ms ในการสร้างและเตรียมจน client  request ได้เริ่มใช้  (b)  ตัวอย่างสมการ  b  –  a  <=  x  ms No. Ac6vity Pass? Fail? Remark/Condi6on 1. Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘offline  locking  strategy’  of  shared  resource  (MFU)  for  upexpected  TX Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบการเข้าถึง  shared  resource ที่ถูกเข้าถึงบ่อยๆ โดย  TX คาดการณ์ไม่ได้ว่าจะ   commit เมื่อไหร่ Approaches:  Non-­‐Func6onal  Test:  Availability Required  Input  /  Test  Data: Expected  Output  /  Outcome: offline  locking  strategy ต้องเป็น  op<mis<c  lock No. Ac6vity Pass? Fail? Remark/Condi6on
  • 24. Non-Functional Test Case Test  Case  ID:  XXX   Test  Case  Name:  Test  size  of  ‘unwanted’  data  sending  from  service  to  client Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบการขนาดข้อมูลที่ส่งจากเซอร์วิสกลับไปยังไคลเอ็นต์ ซึ่งเป็นข้อมูลส่วนที่ ไคลเอ็นต์ไม่ต้องการใช้ Approaches:  Non-­‐Func6onal  Test:  Performance  +  Availability Required  Input  /  Test  Data: Expected  Output  /  Outcome: size  of  unwanted  data  =  0  byte! No. Ac6vity Pass? Fail? Remark/Condi6on 1. Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘Data  Source’s configura<on’  modifica<on  online Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบการแก้ไขค่าคอนฟิกฯ ของ  Data  Source ขณะออนไลน์ โดยไม่ต้อง   shutdown  system Approaches:  Non-­‐Func6onal  Test:  Modifiability  +  Availability Required  Input  /  Test  Data: Expected  Output  /  Outcome: repair  <me  =  0  วินาที No. Ac6vity Pass? Fail? Remark/Condi6on
  • 25. Non-Functional Test Case Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘evic<on’  of  LRU  resource  in  pool  and  cache Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบการ ‘เคลียร์’ resource ที่ไม่ค่อยได้ใช้ออกจาก  pool และ  cache Approaches:  Non-­‐Func6onal  Test:  Performance  +  Availability +  Scalability Required  Input  /  Test  Data: Expected  Output  /  Outcome: evict/passivate/swap  out/delete/serialize  ทันทีเมื่อ  resource นั้น ครบ  idle  <me  out ตามที่คอนฟิกฯ ไว้ No. Ac6vity Pass? Fail? Remark/Condi6on 1.
  • 26. Non-Functional Test Case Test  Case  ID:  XXX   Test  Case  Name:  Test  ‘evic<on’  of  LRU  resource  in  pool  and  cache Relevant  Requirement  IDs: Objec6ves:  เพื่อทดสอบการ ‘เคลียร์’ resource ที่ไม่ค่อยได้ใช้ออกจาก  pool และ  cache Approaches:  Non-­‐Func6onal  Test:  Performance  +  Availability +  Scalability Required  Input  /  Test  Data: Expected  Output  /  Outcome: evict/passivate/swap  out/delete/serialize  ทันทีเมื่อ  resource นั้น ครบ  idle  <me  out ตามที่คอนฟิกฯ ไว้ No. Ac6vity Pass? Fail? Remark/Condi6on 1.