~ ตัวอย่างการประกาศ Class / Function ไว้เรียกใช้ตรงกลาง ~❤️

icens
Jan 16, 2021

หลังจากรู้จักการ set up Flutter driver กับ library บางตัวจาก EP1 ไปแล้วนะคะ วันนี้เราจะมาต่อหลังจากที่เราบอกว่าขอทดไว้ก่อนนะคะ เรื่องการเขียน Function ที่ไว้ใช้ตรงกลางค่ะ

📝 เริ่มเลย

เราขอเรียกไฟล์นี้ว่า common.dart แล้วกันค่ะ สิ่งที่มีในไฟล์จะมีหน้าตาแบบนี้ค่ะ

สิ่งที่ต้องมีก็คือเราต้อง abstract class FlutterDriver เข้ามาใน Function ที่เราจะใช้เป็นตัวกลางค่ะ ไม่งั้นจะไม่สามารถเรียกใช้ได้

เวลาเพื่อนๆจะเรียกใช้ก็แค่ import file common.dart แล้วประกาศแบบนี้ก็สามารถเรียกใช้ได้เลย

ต่อไปเป็นการประการ key ตัวกลางนะคะเพื่อเป็นการป้องกันการใช้ key ซ้ำใน code ด้วยค่ะ เนื่องจาก Flutter driver ไม่สามารถใช้ชื่อ key ซ้ำกันได้ดังนั้นเวลาจะตั้งชื่อ key เพื่อนๆ ก็แค่กด command+F เพื่อตรวจเช็คง่ายๆได้เลยค่ะ

อย่างภาพด้านบนที่เพื่อนๆเห็น ที่เราเรียกใช้ Key.title หรือ Key.submitButton ก็คือเรา import flie กลางมาค่ะ อย่างของเราจะตั้งเป็นชื่อ key.dart ง่ายๆเลยค่ะ

ตัวอย่างการประกาศ Class เพื่อ Fixed ตัวแปร key ใน Flutter

หรือกรณีที่เป็น Data test ที่ต้องใช้ซ้ำๆ กันเพื่อนๆสามารถประกาศแล้วเรียกใช้ได้เหมือการประกาศ Key ได้เลยนะคะ

ความสะดวกของการเขียนแบบนี้ก็คือการเขียน Login, Logout เป็นต้นค่ะ เพื่อนๆสามารถประกาศแบบนี้ได้ที่ setUpAll() หรือ tearDownAll() ได้เลยแบบนี้

Test ของเพื่อนๆก็จะทำการ Login ตอนเริ่ม Test และ Logout หลังจบ Test ให้ค่ะ

ข้อดีของการเขียนแบบนี้คือการลด Duplicate code ของเราเองด้วยค่ะ เราขอแถมอันนี้ให้ด้วยค่ะ การเช็ค expect ของ Test ที่ต้องมีการ getText มาเช็ค เพื่อนๆสามารถเขียนแบบนี้ได้ด้วยนะคะ

หวังว่าบทความของเราจะพอช่วยเพื่อนๆในการเขียน E2E Test Flutter ได้บ้างนะคะ 😊 ต้องบอกตามตรงว่าเราก็ งูๆปลาๆ กับเรื่องนี้เหมือนกันค่ะ 😅 ใครมีอะไรสามารถมาแลกเปลี่ยนความรู้กันได้ค่ะ บางอย่างเราก็ไม่รู้เหมือนกัน วันนี้ขอตัวลาไปก่อนนะคะ สวัสดีค่ะ

--

--