ทำยังไงให้ Test Script ชุดเดียว run ได้ทั้ง IOS และ Android ?

ทำยังไงให้ Test Script ชุดเดียว run ได้ทั้ง IOS และ Android ?
07/02/19   |   262   |  

 

"จะดีกว่าไหมถ้าเราไม่ต้องมานั่ง Setting และ Ctrl+C , Ctrl+V Test Case ในทุกๆ Device ?"

 

จาก Topic เลยคือ ทำยังไงให้ Test Script ชุดเดียว run ได้ทั้ง IOS และ Android ? เรื่องของเรื่องที่ได้บทความนี้มาคือ ก่อนหน้านี้ได้รับมอบหมายให้ไปเขียน Test Script สำหรับ Test Mobile มา แล้วคือยังไง ทุกอย่างเป็น First times ไปหม๊ดด บวกกับนี่เป็นคนขี้เกียจมากๆอยู่แล้ว เลยพยายามที่จะหาวิธีที่มันใช้เวลาน้อยที่สุด (?) เลยไปปรึกษากับพี่ๆในทีม ว่าแบบมันทำแบบนี้ๆได้มั้ย สรุปคือได้ !!!! เอาล่ะ มาลองดูกันสักตั้งแล้วกัน

 

เริ่มจากเราสร้าง Folder ที่จะเอาไว้เก็บงานกับไฟล์งานกับไฟล์งานขึ้นมาก่อนเลย 

 

จะเห็นได้ว่าไฟล์ keyword.robot อยู่ในทั้ง 2 ที่เลยคือ ใน Folder IOS และ Android คำถามคือทำไมต้องมีชื่อไฟล์เดียวกันในหลายๆโฟลเดอร์ด้วยนะ ? 

       คำตอบก็คือ เราจะต้องสร้างไฟล์ 2 ไฟล์ เพื่อมาเก็บคำสั่งของทั้ง 2 Platform โดยมีข้อแม้อย่างนึงว่า ชื่อของ Keywords จะต้องเหมือนกันทั้ง 2 ไฟล์เท่านั้นนะ ส่วนคำสั่งภายใต้ Keywords นั้นไม่จำเป็นต้องเหมือนกันก็ได้

 

 

 

       ต่อมาเรามาสร้างไฟล์ Test Suite กันเลย ใน Test Suite ของเรานี่ก็จะประกอบไปด้วย Setting ซึ่งเอาไว้ Import Library ,Import Resource ,Settings ค่าต่างๆเช่นพวก Suite Setup ,Test Setup ,Test Teardown ,Suite Teardown ซึ่งเราจะไม่บอกนะว่าแต่ละตัวคืออะไร 5555555 ไปหาอ่านเอาที่พี่ในทีมเราเขียนไว้เลยจ้าาา (ขายของงงง

     แต่มีแค่ Setting มันจะไปทำอะไรได้ มันต้องมี Test Case ด้วย! ซึ่งนี่คือหัวใจของ Tester และ QA อย่างเราๆเลย (น้ามตาจาไหลลล) Test Case จะเป็นตัวบอกว่า เราต้องทำอะไร และ Keywords ที่อยู่ใน Test Case นี่ก็คือ Test Step ของเรานั่นเองงงงง ซึ่งอันนี้ก็จะเป็นตัวบอกอีกเช่นกันว่า เราต้องทำยังไงบ้างนะ 

 

 

เห็นอะไรแปลกๆตรง Resource มั้ยจ๊ะ เฮ้ยทำไมมันมี Variable อยู่ตรงนั้นกันนะ? นั่นแหละใจความสำคัญของบทความนี้เลยนะ มันคือ Parameter ที่เราจะส่งเข้าไปตอน run Test Script นั้นเองงงงง โดยเราจะส่ง Parameter นี้ผ่าน Terminal ให้มันไปเรียก Keywords แต่ละ Folder ออกมาใช้งานยังไงล่ะ ซึ่งคำสั่งของการ run Test Script นั่นก็คือ

 

pybot -v LANGE:EN -v DEVICE:IOS test_case.robot

pybot -v LANGE:TH -v DEVICE:IOS test_case.robot

 

ไปดูผลลัพธ์กันนนนนน

 

 

โอโหหหหห สีเขียว เราชอบสีเขียววว

"เห็นมั้ยว่าเราไม่จำเป็นต้องเขียน Test Script ทั้ง Andriod และ IOS เพียงแค่เราใส่ -v แล้วตามด้วยชื่อ Folder เราก็สามารถ run Test Script ได้ทั้ง 2 Platform แล้ว"

 

tags : #automate test #appium #robot framework #mobile test



ติดตามข่าวสารและเรื่องราวดีๆ ทาง Email