โครงสร้างนี้ช่วยอะไร?
✅ จัดระเบียบโค้ด → แยก test cases, keywords, libraries, และ config ออกจากกัน
✅ ทำให้ reusable → นำ keywords และ variables ไปใช้ซ้ำได้
✅ ปรับขนาดได้ง่าย → ถ้ามีฟีเจอร์เพิ่ม ก็แยกโฟลเดอร์ให้เป็นโมดูลได้
Project Name
Web , Mobile , API
Setting
run_process.ry
import.resource
Test Data
TH
.yaml
.json
.xlsx
.csv
EN
Test Case
Utility
Custom
Page Keyword
Page functional
Locator
Test Result
.gitignore
requirement
อธิบายแต่ละโฟลเดอร์:
Web , Mobile , API
แยกการทดสอบตามประเภทของแอปพลิเคชัน เช่น Web, Mobile, และ API โดยมีโฟลเดอร์ย่อยสำหรับแต่ละประเภท
Setting
เก็บไฟล์ที่เกี่ยวข้องกับการตั้งค่าการ Run เช่น
run_process.py: ไฟล์ที่ใช้สำหรับกำหนดการรันเทส เช่น การตั้งค่าระบบหรือสภาพแวดล้อมต่าง ๆ
import.resource: ไฟล์ที่ใช้สำหรับการอิมพอร์ต resources ที่ใช้ในโปรเจกต์ เช่น คำสั่งต่าง ๆ หรือการตั้งค่าเริ่มต้น
Test Data
เก็บข้อมูลทดสอบที่ใช้สำหรับรัน test case
แบ่งออกตามภาษา เช่น TH, EN เพื่อใช้ในการทดสอบแบบ localization
สามารถใช้ไฟล์หลายประเภท เช่น .yaml, .json, .xlsx, .csv เพื่อเก็บข้อมูล
Test Case
เก็บ test cases สำหรับทดสอบฟังก์ชันต่าง ๆ ของแอปพลิเคชันที่กำลังพัฒนา
จัดระเบียบการทดสอบแยกตามโมดูล (Web, Mobile, API)
Utility
ใช้เก็บเครื่องมือหรือฟังก์ชันที่ช่วยในการทดสอบ
Custom: ฟังก์ชันที่เราสร้างขึ้นเอง หากไม่มีใน builtln หรือ lib
Page Keyword: คำสั่งที่เกี่ยวข้องกับแต่ละหน้า (Page Object Model)
Page functional: ฟังก์ชันการทำงานของแต่ละฟีเจอร์ในหน้านั้นๆ
Locator: เก็บข้อมูลที่เกี่ยวข้องกับ locators สำหรับการค้นหา elements
Test Result
เก็บผลลัพธ์ของการทดสอบ เช่น ไฟล์ log, report, หรือ output ที่สร้างขึ้นหลังจากการ Run
.gitignore
ระบุไฟล์หรือโฟลเดอร์ที่ไม่ต้องการให้ git track เช่น ไฟล์ผลลัพธ์การทดสอบหรือข้อมูลที่ไม่จำเป็น
requirement
เก็บไฟล์ที่ระบุ dependencies เช่น requirements.txt หรือ robot.yaml เพื่อจัดการกับการติดตั้งไลบรารีที่จำเป็น