robot
คำถามที่น่าสนใจสำหรับการนำ Robotframework
มาใช้ทดสอบ web application ที่มีหลายภาษาคือ
จะทำการทดสอบอย่างไรดี ?
จะทำการวางโครงสร้างอย่างไรดี ?

โดยหนึ่งในแนวทางที่ผมใช้อยู่เป็นดังนี้

สิ่งที่ใช้คือทำการแยกไฟล์ resource ออกเป็น folder แต่ละภาษาไปเลย
ถ้าต้องการจะทดสอบภาษาอะไรนั้น
ก็ให้ส่งข้อมูลผ่าน parameter ตอน run test ได้เลย

แต่วิธีการนี้ใช้สำหรับระบบที่ต่างกันเพียงข้อความต่าง ๆ เท่านั้น
ถ้าขั้นตอนการทำงานเปลี่ยนแปลงในแต่ละภาษา
ก็ตัวใครตัวมัน เพราะว่า ต้องเขียนชุดการทดสอบเพิ่มเอาเอง !!

วิธีการก็ไม่ยาก

เริ่มด้วยการสร้างไฟล์ resource แยกตามภาษา
โดยในแต่ละไฟล์จะมี variable ชื่อเดียวกัน
ต่างเพียงข้อมูลเท่านั้น ดังนี้

ภาษาไทย (th/message.txt)

ภาษาอังกฤษ (en/message.txt)

ในไฟล์ทดสอบเป็นอย่างไร ?
ให้ทำการรับข้อมูลมาจาก parameter ที่ส่งมาได้เลย
ซึ่งจากตัวอย่างตั้งชื่อว่า LANG
เพื่อใช้บอกว่าให้ไปดึงข้อมูลจากไฟล์ resource ของภาษาอะไร ดังนี้

จากนั้นก็ทำการทดสอบดังนี้

//ภาษาไทย
$pybot --variable LANG:th test.txt

//ภาษาอังกฤษ
$pybot --variable LANG:en test.txt

เพียงเท่านี้ก็สามารถจัดการข้อมูลของแต่ละภาษาได้แล้วครับ
สำหรับการเปลี่ยนภาษาของระบบงานล่ะ ทำอย่างไร
คำตอบคือ ลองทำดูสิ !!

ตัวอย่าง code อยู่ที่ Github::Up1 https://github.com/up1/demo-robot-with-multiple-language

คำถาม แล้วคุณล่ะทำการทดสอบกันอย่างไรบ้าง ?
มาแบ่งปันกันหน่อยสิ