ความหมายของ Cucumber ไฟล์คุณสมบัติและคำจำกัดความขั้นตอน? (ตัวอย่าง)
สำหรับทุกโปรเจ็กต์แตงกวา จะมีไดเร็กทอรีเดียวที่รากของโปรเจ็กต์ชื่อ “ที่- นี่คือที่ที่คุณสมบัติแตงกวาทั้งหมดของคุณจะอยู่ ในไดเร็กทอรีนี้ คุณจะพบไดเร็กทอรีเพิ่มเติม ซึ่งก็คือ step_definition และ ไดเรกทอรีสนับสนุน
“ไฟล์ฟีเจอร์” คืออะไร?
ไฟล์คุณลักษณะมีคำอธิบายระดับสูงของสถานการณ์การทดสอบในภาษาง่ายๆ เป็นที่รู้จักกันในนาม แตงเล็ก ๆ หนึ่งมีสีเหลือง- Gherkin เป็นภาษาข้อความภาษาอังกฤษธรรมดา
Cucumber ไฟล์คุณลักษณะประกอบด้วยส่วนประกอบต่อไปนี้
- ลักษณะ: คุณลักษณะจะอธิบายสคริปต์ทดสอบปัจจุบันที่ต้องดำเนินการ
- สถานการณ์: สถานการณ์จำลองจะอธิบายขั้นตอนและผลลัพธ์ที่คาดหวังสำหรับกรณีการทดสอบเฉพาะ
- โครงร่างสถานการณ์: สถานการณ์เดียวกันสามารถดำเนินการได้สำหรับชุดข้อมูลหลายชุดโดยใช้โครงร่างสถานการณ์ ข้อมูลจัดทำโดยโครงสร้างตารางคั่นด้วย (II)
- ให้: ระบุบริบทของข้อความที่จะดำเนินการ โดยใช้ตารางข้อมูล "Given" ขั้นตอนก็สามารถกำหนดพารามิเตอร์ได้
- เมื่อ: “เมื่อ” ระบุการดำเนินการทดสอบที่จะต้องดำเนินการ
- แล้วก็: ผลลัพธ์ที่คาดหวังของการทดสอบสามารถแสดงด้วย "จากนั้น"
ต่อไปเราจะมาเรียนรู้วิธีการเขียน Feature File กัน Cucumber พร้อมตัวอย่าง
ตัวอย่างไฟล์คุณสมบัติตัวอย่าง:
Feature: Visit career guide page in career.guru99.com Scenario: Visit career.guru99.com Given: I am on career.guru99.com When: I click on career guide menu Then: I should see career guide page
“คำจำกัดความขั้นตอน” คืออะไร?
ข้อกำหนดขั้นตอนจะแมปขั้นตอนกรณีทดสอบในไฟล์คุณลักษณะ (แนะนำโดย Give/When/Then) กับโค้ด ซึ่งดำเนินการตามขั้นตอนใน Application Under Test และตรวจสอบผลลัพธ์เทียบกับผลลัพธ์ที่คาดหวัง สำหรับคำจำกัดความขั้นตอนที่จะดำเนินการ จะต้องตรงกับองค์ประกอบที่กำหนดในคุณลักษณะ คำจำกัดความของขั้นตอนถูกกำหนดไว้ในไฟล์ Ruby ภายใต้ “features/step_definitions/*_steps.rb”
ตัวอย่างการกำหนดขั้นตอน: ในที่นี้เราจะใช้ด้านบน Cucumber ไฟล์ฟีเจอร์ ตัวอย่างการเรียกดู career.guru99.com เราจะใช้ฟีเจอร์ เช่น “When, That, Give” ดังแสดงด้านล่าง Cucumber ตัวอย่างไฟล์คุณสมบัติ
Step 1: Given (/^ I am on career.guru99.com$/) do Browser.goto "http://career.guru99.com" -This will visit career.guru99 on browser end Step 2: When (/^ click on career guide menu$/) do Browser.text (:name, " career guide" ).click – This will click "career guide menu" end Step 3: Then (/^ I should see career guide page$/) do Browser.goto "http://career.guru99.com/category/career-guide/" - It will visit "career guide page" end
สรุป
- คุณต้องมี 2 ไฟล์ - คุณสมบัติและคำจำกัดความขั้นตอนเพื่อดำเนินการสถานการณ์การทดสอบ Cucumber
- ไฟล์คุณสมบัติประกอบด้วยคำอธิบายระดับสูงของ สถานการณ์ทดสอบ ในภาษาง่ายๆ
- ไฟล์คำจำกัดความของขั้นตอนประกอบด้วยโค้ดจริงเพื่อดำเนินการสถานการณ์การทดสอบในไฟล์คุณสมบัติ