วันอาทิตย์ที่ 21 มีนาคม พ.ศ. 2564

สถานะของการทดสอบ [Test Execution Status]

 สถานะของการทดสอบ [Test Execution Status] 



•  Passed = Test Scenario has been tested as planned and application works as expected result

   Passed = ผลทดสอบผ่าน ถูกต้อง ตรงกับความต้องการของระบบ 

• Failed = Test Scenario has been tested as planned but application does not works as expected result (the issue will be raised in HPQC as a defect)

  Failed = ผลทดสอบไม่ผ่าน ไม่ตรงกับความต้องการของระบบ  และจะต้องมีการ Raise defect ไว้ เช่น Raise ไว้ที่ Jira ,HPQC, Spira        

•  Blocked = Test Scenario could not be tested as planned because there is an outstanding defect in related functional area

   Blocked = เป็น สถานะเทสเคสที่เกิดขึ้นระหว่างการสอบนั้นมีบางDefect ที่ส่งผลกระทบต่อเคสอื่นๆที่เกี่ยวข้อง หากไม่แก้ไข defect ข้อนี้จะส่งผลให้ไม่สามารถทดสอบเคสอื่นๆที่เกี่ยวข้องได้ เช่น จากรูปภาพด้านล่างเป็นภาพของเครื่องคิดเลข จากภาพนี้ จะสมมุติให้ มี defect อยู่ 1 ข้อคือ

ยังไม่สามารถกดปุ่มตัวเลข 7 4 1 0  ได้ ดังนั้น โปรแกรมเครื่องคิดเลขนี้ ก็จะยังเป็นการทดสอบที่ไม่สามารถทดสอบผลได้อย่างสมบูรณ์ และ ส่งผลให้ เทสเคสที่เกี่ยวข้องกับการ บวก ลบ คูณ หาร หรือการคำนวนณ์อื่นๆ นั้นโดน blocked 

  


•  Not Complete = Test Scenario has been tested as planned but not yet finished due to awaiting test result e.g. require EOD batch

   Not Complete = สถานะเทสเคสที่ผลสอบยังไม่สมบูรณ์ เช่น การตรวจสอบรายงานบ้างอย่าง ที่ต้องรอ End Of Day  batch  ดังนั้นแล้ว เคสลักษณะนี้จะต้องใช้เวลาอย่างน้อย 2 วันทำการ  โดยที่วันแรก เป็นการทำ Activity เพื่อให้ได้ข้อมูลในการออกรายงาน เมื่อสิ้นวันจะมีการ รัน End Of Day  batch (EOD batch)  และวันที่สอง จะต้องมาดูผลรายงานว่าถูกต้องหรือไม่ 

• No Run = Test Scenario has not been tested as planned

   No Run =สถานะเทสเคสที่ยังไม่เริ่มทดสอบ 

• N/A = Invalid Test Scenario or valid but could not be tested as planned due to limitation of test data/environment

  N/A = สถานะเทสเคสไม่สามารถเทสได้แล้ว ณ ตอนนี้ ซึ่งอาจจะเกิดขึ้นได้หลายสาเหตุ เช่น 

      - Requirement ที่เปลี่ยนไปแล้ว

      -ไม่มีข้อมูลทดสอบ

      -เป็นเทสเคสที่ไม่สามารถเทสได้ 

ขอบคุณภาพหน้าจอการคำนวนเลขจาก www.desmos.com

วันอาทิตย์ที่ 14 มีนาคม พ.ศ. 2564

Defect Severity จะจัดความสำคัญของ Defect แต่ละตัวที่พบอย่างไร

Defect Severity จะจัดความสำคัญของ Defect แต่ละตัวที่พบอย่างไร




Defect Severity 1:

  The defect results in the complete failure of the System under test. No further testing can be conducted until the defect is resolved or mitigated.

Example :

- TCB is down, unable to access test environment , unable to  connect to database/Application.

- EOD Batch running fails. This impacts test execution schedule.

Defect Severity 2:

  Defect results in financial loss/regulatory breach/customer impact  and/or cannot continue (block) in specific area with or without solution workaround.

Example :

- Unable to perform cash deposit transaction.

- Incorrect calculation

- Wrong calculation of fee/interest of any transaction

- User is allowed to perform remittance with amount above authorization level, etc.

Defect Severity 3:

  Defect that does not result in failure of the functions, modules or interfaces but causes incorrect, incomplete, or inconsistent results with solution workaround. 

Example :

- Report generated with incorrect file extension.

- Wrong error message

Defect Severity 4:

  Defect that does not affect on the testing result. The test has passed, however a non-critical element of the functions, module or interface has an error.

Example :

- Cash deposit is successful, but validation line printing is misaligned.

- Date shown on statement in Thai instead of English

-Typing error


Credit:

www.softwaretestinghelp.com/

www.guru99.com

คำศัพท์ทีเกี่ยวข้องกับงาน Software tester ตอนที่2 Hot Fix กับ Hot Issues

 Hot Fix กับ Hot Issues มาทำความรู้จัก คำ2คำนี้เถอะ ว่าเขาใช้กันตอนไหนบ้าง

Hot Fix:ในมุมและประสบการณ์ของผู้เขียน โดยส่วนมากจะพบตอนที่ product นั้นๆ ได้ถูกนำไปใช้งานจริงๆแล้วพบว่า การทำงานบางฟังก์ชันงานนั้นยังไม่ถูกต้อง ส่งผลกระทบต่อลูกค้า ดังนั้นแล้วจึงต้อง มีการรีบแก้ไขและ deployขั้นไปใหม่เพื่อให้ระบบทำงานได้อย่างถูกต้อง ลดผลกระทบที่จะเกิดขึ้นกับลูกค้า/ผู้ใช้งาน 

Hot Fix: is a critical bug fix that needs to go live before the next scheduled release date.

Hot Issues : คำนี้จะเกิดขึ้นในระหว่างการทดสอบ ว่ามี defect เรื่องอะไรที่เราเจอ และ มี level ของ defect ตั้งแต่ระบบ major ขึ้นไป และในสิ้นวันเราจะทำการสรุปประเด็น ปัญหา หรือ Defect ที่พบในแต่ละวัน รายงานให้ผู้เกี่ยวข้องทราบ บางที อาจจะใช้คำอื่นแทนได้ แล้วแต่การจะเลือกเล่นคำ เช่น Hot issues ,Highlight Issues


วันเสาร์ที่ 13 มีนาคม พ.ศ. 2564

คำศัพท์ทีเกี่ยวข้องกับงาน Software tester ตอนที่ 1

 คำศัพท์ทีเกี่ยวข้องกับงาน Software tester ตอนที่ 1

ในตอนที่ 1 นี้ขอเล่าเกี่ยวกับ Defects, Bug แต่ลำคำ จะมีความหมาย หรือ ความแตกต่างกันอย่างไรนั้น มาดูกันเลยค่ะ



Defects:ในมุมและประสบการณ์ของผู้เขียน คือ การที่โปรแกรมทำงานและได้ผลลัพท์ที่ไม่ถูกต้องตามที่ควรจะเป็น หรือ ตามที่ requirement กำหนดไว้ เช่น 

    Requirement ระบุไว้ว่า ต้องสามารถค้นหาข้อมูลลูกค้าได้จาก ชื่อ, นามสกุล 

   นั่นคือ 

    Expected result : สามารถค้นสามารถค้นหาข้อมูลลูกค้าได้จาก ชื่อ, นามสกุล และแสดงผลได้อย่างถูกต้อง

    แต่ผลการทดสอบรอบแรก คือสามารถค้นหาจากชื่อ ได้ แต่ ค้นหาจาก นามสกุลไม่ได้ 

 นั่นคือ 

    Actual result :

         - สามารถค้นหาจากชื่อ ได้  แสดงผลได้อย่างถูกต้อง

         - ไม่สามารถค้นหาจาก นามสกุล ได้ 

   ซึ่ง Defect ที่เกิดขึ้นก็คือ ยังไม่สามารถค้นหาจาก นามสกุล ได้ 

Defects: are issues within an app or site that don’t meet the acceptance criteria (see above). For example, maybe a background is the wrong shade of blue. This wouldn’t necessarily seem like a “bug” to real users. But because it doesn’t match the company requirements for the design, it would be a “defect.”

Bugs:ในมุมและประสบการณ์ของผู้เขียน คือ สิ่งที่เกิดขึ้น หรือ ผลลัพท์ ที่ไม่ได้เกิดจากrequirement ของระบบ ,ส่ิงที่ไม่ได้คาดว่าจะเกิดขึ้น

เช่น 

   - เปิดใช้งาน application แล้ว เกิด crash หรือปิดตัวเองอัตโนมัติ 

   - เกิดการ Error บางอย่างในขณะที่โปรแกรมทำงาน และ Error ดังกล่าวprogrammer ยังไม่ได้ handle อย่างถูกต้อง 

Bugs: are problems with an app or website. Sometimes they’re obvious issues, such as a crash or unexpected error message. Other times, they’re considered problematic because they don’t match the company’s expectations.

Credit :mindfulqa.com/qa-vocabulary

วันอาทิตย์ที่ 7 มีนาคม พ.ศ. 2564

Documents ที่เกี่ยวข้องกับงาน Software tester

 มาหาความรู้เกี่ยวกับเอกสารที่จำเป็นในงานของ Software tester  กันเถอะค่ะ 

Documents ที่เกี่ยวข้องกับงาน Software tester 

Input Document

 - Requirement (มีชื่อเรียกที่แตกต่างกันในแต่ละองค์กร เช่น Project Proposal, High Level Architecture Design etc.)

 - Program Specification (มีชื่อเรียกที่แตกต่างกันในแต่ละองค์กร Software Requirement Specification, Program Specification,  -  Functional Specification etc.)

 -  Work flow process

    ส่วนนี้ Tester จะต้องทำความเข้าใจในรายละเอียดของงานหรือproject นั้นๆจากเอกสารเหล่านี้ เพื่อจะได้นำไปใช้ในการเขียนเทสเคสต่อไป

Output Document (deliverable document)

 - Test Plan

 - Test Specification / Test Design

 - Test Scenario

 - Test Case / Test Script

 - Requirement traceability matrix

 - Test Summary Report 

 - Defect Log

 - Test Result

  ส่วนนี้ผู้เขียน ขอเรียกว่า อาวุธประจำกายของเทสเตอร์ละกัน haha ต้องเรียนรู้และใช้งานให้เป็นทุกตัวนะคะ และปรับใช้ให้เหมาะสมกับงานค่ะ

รายละเอียดของแต่ละหัวข้อ รอติดตามอ่านกันในบทความต่อไปนะคะ 



Credit :e-Learning PSRUelearning.psru.ac.th

วันเสาร์ที่ 6 มีนาคม พ.ศ. 2564

คุณสมบัติที่ Software tester ควรมี

 Software tester เป็นคนแบบไหนกันนะ มาดูกันค่ะว่า การจะเป็น Tester นี้ควรฝึกหรือทำตัวอย่างไรกันบ้าง

คุณสมบัติที่ Software tester ควรมี 

1)อันดับแรกต้องเป็นคนที่มีใจรักในงานที่ทำ หากเราทำอะไรแล้วมีความชอบในงาน เราจะสามารถทำงานนั้นๆออกมาดีและมีความสุขค่ะ

2)เป็นคนช่างสังเกตุ  

  Software tester เป็นคนช่างสังเกตุ ไม่ว่าจะเป็นหน้าจอที่เขานำมาเสนอ หรือพูดคุยในห้องประชุม 

3)อยากรู้อยากเห็น กระตือรือร้น ที่จะได้รู้ได้เห็นสิ่งต่างๆ 

4)สงสัยแล้วก็กล้าถาม

   การตั้งคำถามเป็นทักษะ และเป็นคุณสมบัติที่ดีของ Software tester  เพราะ คำถามที่ถามนั้นบ่งบอกว่า เราเข้าใจเนื้อหา Project ที่กำลังจะทำหรือไม่ รวมถึงจะบอกได้ว่า สิ่งที่มีอยู่คืออะไร สิ่งที่ขาดและต้องเพิ่มเติมมาคืออะไร  อย่าลืมฝึกทักษะการตั้งคำถามที่ดีนะคะ 

5)ชอบลองผิดลองถูก

   ในการทดสอบอาจจะมีหลายวิธี วิธีที่ 1 ,2,3 เวลาทดสอบแล้วได้ผลเป็นอย่างไร เหมือนกันหรือต่างกัน 

6)คิดต่าง คิดนอกกรอบ ทำให้เทสเคสที่ได้นั้นมีประสิทธิภาพมากขึ้น

7)รักที่จะเรียนรู้สิ่งใหม่ๆ

    โดยเฉพาะสายงาน IT นั้นมีการพัฒนา และแข่งขันสูงมาก Software tester ที่ดีต้องมีการพัฒนาตนเองตลอดเวลา

ในการทำงานแต่ละproject , บาง project เราอาจจะไม่เคยทำมาก่อน จะต้องมีการศึกษาข้อมูลเพิ่มเติมด้วยตนเอง 

8)ไม่รังเกียจที่จะทำงานเอกสาร

  ส่ิ่งที่ต้องมีเอกสารหรือต้องทำเป็นประจำคือ Test scenario , test case, test script และ test report

9)ต้องมีมนุษย์สัมพันธ์ที่ดี เพราะการทำงาน Software tester นี้ต้องติดต่อประสานงานกับ Programer ,BA,PM และคนอื่นๆที่เกี่ยวข้องในโปรเจ็ค ตลอดทั้้งในการทดสอบโปรแกรมนั้น ในช่วงแรกๆนั้นจะพบปัญหามากมาย เช่น Enviroment test ยังไม่พร้อมเทส หรือ Test ได้บ้างไม่ได้บ้าง , สามวันดี สี่วันไข้ ชวนหงุดหงิดมาก  ทั้งนี้ต้องทำความเข้าใจลักษณะปัญหา และงานที่ตัวเองทำ 

10) อารมณ์ดี haha อันนี้ทุกคนควรมีนะคะ จะได้ไม่เครียด มีความสุขกับงานที่ทำค่ะ 👸💓



Software Tester ทำอะไรบ้าง

 หน้าที่ Software Tester 

1)วิเคราะห์ความต้องการของระบบหรือซอฟต์แวร์ที่กำลังจะทดสอบ

     ขั้นตอนนี้สำคัญมากๆ โดยปกติแล้ว เมื่อมีโปรเจ็คที่จะทำ จะต้องมีการประชุมกันว่า จะทำโปรเจ็คอะไร ทำเกี่ยวกับอะไร

  ซึ่งจะมีการนำเอาหน้าจอ + Requirement ต่างๆมาพูดคุยกัน 

     ซึ่งในระหว่างการประชุมหาก Tester มีคำถาม อย่าได้ลังเล เขินอายที่จะถามนะคะ สงสัยให้ถามเลย เพราะจะทำให้มีความเข้าใจในระบบมากยิ่งขึ้น

  ซึ่งจะเป็นประโยชน์ในขั้นตอนการเขียนเทสเคส 

2)วางแผนสำหรับการทดสอบเพื่อให้เป็นไปตามเป้าหมายที่วางไว้

    เมื่อทราบความต้องการของระบบทั้งหมดแล้ว รวบทั้ง Scope ของงานที่จะทำในแต่ละ release หรือ sprint แล้วแต่จะเรียก 

เราต้องทำการประเมินเวลาในการทำงาน โดยเอา Scope of work เป็นตัวกำหนด ว่าด้วย Scope งานเท่านี้ จะต้องใช้เวลาทำงานกี่วัน 

3)คิดและออกแบบวิธีการทดสอบที่เหมาะสม ทั้ง Test Case, Test Scenario, Test Data และ Test Environment

4)สร้างและจัดเตรียมสิ่งที่จำเป็นต้องใช้ในการทดสอบ เช่น Test Case และ Test Scenarios เป็นต้น

5)เตรียม Test Data และ Test Environment

    5.1 Test data ต้องมีการจัดเตรียม data ตาม Test Scenarios หรือ Test Case อย่างเหมาะสม 

    5.2 Test Environment เช่น PC , mobile , Android , IOS 

6)ลงมือทดสอบ

    การลงมือทดสอบ ควรดูว่า ลำดับเหตุการณ์ของการทำงานนั้นอะไรเกิดก่อนหลัง ให้ทำการเทสตาม work flow อย่างถูกต้อง เพราะจะทำให้มีการทำงานที่ต่อเนื่องกัน 

  ทำการ Group งาน หรือเทสเคส ที่เกิดต่อเนื่องกัน และทำการเทส 

7)บันทึกปัญหาที่เจอ

     การบันทึกปัญหาที่เจอ นั้นจะต้องบอกว่าเราเจอปัญหาขั้นตอนไหน รายละเอียดปัญหาที่พบคืออะไร ถ้ามีภาพ หรือ วิดีโอประกอบ , Error log จะดีมาก เพราะจะช่วยทำให้ Programmer นั้นวิเคราะห์ปัญหาและแก้ไขได้เร็ว

    Tool ที่ใช้ในการบันทึกปัญหา หรือ เรียกกันว่า log defect นั้น เช่น jira ,SpiraTest ,HPQC 

8)เขียนสรุปผลการ test เพื่อรายงานให้ผู้ที่เกี่ยวข้องรู้ – produce test report



Softwar Tester เป็นใคร

Tester หรือ Software tester หรือ Quality Assurance Engineer หรือ Quality Engineer ,Test engineer (หลายชื่อจริงๆ แล้วแต่บริษัทจะเรียกชื่อ) คือ คนที่มีหน้าที่ตรวจสอบคุณภาพของ software/Application ที่ถูกผลิตขึ้นมาโดย programmer หรือ developer  โดยใช้วิธีการ test ต่างๆ ไม่ว่าจะเป็น manual test , automate test เพื่อให้มั่นใจว่า software หรือ  Application ที่จะไปถึงมือลูกค้า ( end user) มีคุณภาพและปราศจากข้อผิดพลาดหรือมีข้อผิดพลาดน้อยที่สุด ข้อผิดพลาดเรารู้จักกันว่า bug นั่นเอง 




เทสเคสระบบสมัครสมาชิก ตอนที่2

 กลับมาแล้วค่ะ หลังจากที่ห่างหายไปนานเนื่องจากอาการกังวลเรื่องสถานการณ์โควิด19😂 เอาใหม่ตั้งสติและกลับมาเขียนบทความดีๆเพื่อเป็นแนวทางสำหรับเ...