หลังจากที่เราเริ่มเขียน Test Script ไปสักพัก ก็จะเริ่มมี Test Step ที่เรามักต้องทำซ้ำ ๆ กัน เช่นเวลาเริ่มต้นและส่วนท้ายของ Test Script ทำให้ Test Script ของเราดูรก อ่านยาก มี Code ซ้ำ ๆ กันเต็มไปหมด และ Test Script เองก็มี Step ที่ไม่เกี่ยวกับการ Test ปนมาเพียบเลย
วันนี้เลยขอเสนอให้ลองใช้ Setup และ Tear Down เพื่อช่วยลด Step เหล่านี้จาก Test Script ของเราดู โดย Setup และ Tear Down คืออะไรมารู้จักกัน
Suite Setup = ก่อนที่จะเริ่ม
Run Test ทั้งหมด จะต้องเริ่มการทำงานตัวนี้ก่อน
Suite Teardown = หลังจาก Run
Test เสร็จทั้งหมดแล้วจะสั่งให้ทำอะไรตอนสุดท้าย
Test Setup = ก่อนที่จะเริ่มเข้า
Test Case ให้เริ่มการกระทำนี้ก่อน
Test Teardown = หลังจากจบ Test Case แต่ละ Case ให้ทำการกระทำนี้
ตัวอย่าง
จากรูปด้านบน ก่อนที่จะเริ่ม Run Test ทั้งหมด ให้เริ่มทำการเปิด Browser ก่อน เมื่อเริ่ม Test Case ให้แสดงคำว่า Start!!! และเมื่อจบ Test Case ให้แสดงคำว่า “Finish!!!” แล้วพอจบ Test ให้ทำการ ปิด Browser นี้
ดังนั้น กรณีหากเรามี Case แค่ Case เดียวอาจจะไม่จำเป็นที่จะต้องใช้ Test Setup กับ Test Teardown ก็ได้ เพราะว่าเราสามารถใช้ Suite Setup ในการเริ่มต้น และ Suite Teardown ในการจบการกระทำเลยก็ได้
***สมมติว่า Test Case เรามี Pre-Condition ที่มี Step เหมือนกันทุก Test Case ก็ควรเอา Step นี้อยู่ใน Test Setup
ข้อดีของ Setup และ Teardown
ลดความซ้ำซ้อนของแต่ละ Test Script ลง ช่วยให้ดูง่ายขึ้น
ช่วยทำให้เราโฟกัส กับสิ่งที่เราต้องการจะ Test ในแต่ละ Test Case ได้จริงๆ โดยไม่มี Setup Step และ Teardown
Step มาทำให้ดูวุ่นวาย เกินความจำเป็น
ช่วยเครียร์
Test Environment เสมอก่อนจากรัน Test
และหลังจากรัน Test เสร็จ
ถึง Test จะ Failed
แต่ Teardown ก็ยังทำงานต่อ
จึงมั่นใจได้ว่า Test Environment ของเราสะอาดเสมอก่อนจะรัน Test ข้อต่อไป ^_^
– สามารถประยุกต์นำมาใช้งานเป็น Single Sign On ได้ (ต้องพัฒนาเพิ่มเอง ไม่มีมาให้ในมาตรฐาน)
=================================================
References : [1] The OAuth 2.0 Authorization Framework : https://tools.ietf.org/html/rfc6749
[2] An Introduction to OAuth2 : https://www.digitalocean.com/community/tutorials/an-introduction-to-oauth-2
[3] OAuth 2.0 clients in Java programming, Part 1, The resource owner password credentials grant : https://www.ibm.com/developerworks/library/se-oauthjavapt1/index.html
// Summary: // Reloads the entity from the database overwriting any property values with values // from the database. The entity will be in the Unchanged state after calling this // method. public void Reload();
Manual Testing ก็คือ การทดสอบที่ดำเนินการโดยไม่ได้ใช้เครื่องมืออัตโนมัติ (Automated Tool) หรือสคริปต์ (Script) โดยผู้ทดสอบจะ Run Test ตาม Test Plan, Test Case หรือ Test Scenarios ด้วยมือของผู้ทดสอบเองนั่นแหละค่ะ [Manual คำศัพท์ทางวิศวกรรม ความหมาย คือ คู่มือ, (งาน) ทำด้วยมือ]
ทำไม Tester ต้องรู้จัก Web Element Locator ก็เพราะว่าทุกสิ่งทุกอย่างที่ทุกคนเห็นบนหน้าเว็บ มันคือ Web Element และ Robot Framework ก็รู้จัก หน้าเว็บจาก Element Locator ที่เหล่า Tester กำหนดให้ในแต่ละ Test script นั่นเองค่ะ ดังนั้น Tester ควรจะต้องรู้จัก Element Locator และวิธีการใช้งานค่ะ
ตัวอย่าง Locator ของ Selenium library ดังรูป
Element Locator มีหลายประเภท ดังนี้ 1. Id Element ที่มีการกำหนด id ไว้ ซึ่งเราควรจะเลือกใช้ locator นี้ค่ะ มีความเสถียรมากสุด เพราะถึงแม้ว่าจะมีการเปลี่ยนย้ายตำแหน่งของ Element นี้ จะไม่กระทบ Test script ของเราเลยค่ะ ตัวอย่าง locator :: id=u_0_n;
2.Name Element ที่มีการกำหนด name ไว้ ตัวอย่าง locator :: name=lastname