Selendroid บทช่วยสอนสำหรับผู้เริ่มต้นพร้อมตัวอย่าง

คุณเคยพัฒนาก Android แอปพลิเคชันและเผยแพร่ไปยัง Google Play? คุณจะทำอย่างไรหากคุณได้รับรีวิวจากผู้ใช้เช่น –

Selendroid การกวดวิชา

เมื่อคุณเผยแพร่แอปไปยัง Google Play แอปนั้นจะต้องได้รับการทดสอบอย่างดีเพื่อหลีกเลี่ยงข้อบกพร่องที่อาจเกิดขึ้น มีสถานการณ์การทดสอบมากมายที่ควรทำก่อนที่จะเผยแพร่แอป เพื่อบันทึก การทดสอบ คุณต้องมีเครื่องมือทดสอบ หนึ่งในเครื่องมือทดสอบที่ดีที่สุดสำหรับ Android แอพคือ Selendroid.

ความหมายของ Selendroid?

Selendroid เป็นเฟรมเวิร์กการทดสอบอัตโนมัติสำหรับแอปพลิเคชันมือถือหลายประเภท: พื้นเมือง รวมถึง ไฮบริด Android แอปและ โทรศัพท์มือถือ เว็บ

ความหมายของ Selendroid

คุณสามารถเขียนแบบทดสอบโดยใช้ Selenium API ไคลเอ็นต์ 2 รายการ เพราะ Selendroid ยังคงนำสิ่งที่มีอยู่กลับมาใช้ใหม่ Selenium โครงสร้างพื้นฐานสำหรับเว็บ

Selendroid เป็นเครื่องมือทดสอบที่ทรงพลัง สามารถใช้กับ การเลียนแบบ และของจริง อุปกรณ์

ความหมายของ Selendroid

ทำไมเราถึงต้องการ Selendroid?

Selendroid เป็นเครื่องมือทดสอบที่ยอดเยี่ยม แต่คุณอาจยังสงสัยถึงประโยชน์ของมัน

ทำไมเราถึงต้องการ Selendroid

ในส่วนนี้จะแนะนำคุณสมบัติที่สำคัญของ Selendroid เพื่อตอบคำถามว่าทำไมคุณถึงต้องการ Selendroid.

ทำไมเราถึงต้องการ Selendroid

  • คุณสามารถทดสอบแอปพลิเคชันภายใต้การทดสอบโดยใช้ Selendroid โดยไม่ต้องดัดแปลงแอพใดๆ คุณเพียงแค่ต้องการไฟล์ไบนารี่ (APK) ติดตั้งบนคอมพิวเตอร์ ในการติดตั้งไฟล์ไบนารีบนอุปกรณ์ แอปทดสอบและแอปมือถือจะต้องลงนามด้วยคีย์เครื่องหมายเดียวกัน
  • Selendroid แอปทดสอบสามารถโต้ตอบกับอุปกรณ์หรือเครื่องจำลองหลายเครื่องพร้อมกันได้ นับเป็นข้อได้เปรียบที่ยอดเยี่ยม Selendroid- เพื่อให้คุณสามารถทดสอบแอปของคุณได้หลากหลาย Android อุปกรณ์เพื่อตรวจสอบความเข้ากันได้
  • Selendroid สามารถจำลองการกระทำของมนุษย์บนแอปได้ เช่น การสัมผัส ปัด ลากและวางบนอุปกรณ์
  • คุณสามารถเปลี่ยนอุปกรณ์ฮาร์ดแวร์ (เสียบและถอดปลั๊ก) ในระหว่างการทดสอบโดยไม่ต้องรีสตาร์ทหรือหยุดการทดสอบ Selendroid จดจำอุปกรณ์ใหม่โดยอัตโนมัติ
  • ตรงกับ Android เวอร์ชัน API ขึ้นไป Selendroid ยังรองรับสิ่งใหม่อีกด้วย Android API (จาก API 10 ถึง API 19)
  • Selendroid ยังมีเครื่องมือตรวจสอบในตัวเพื่อช่วยคุณระบุองค์ประกอบ UI ของแอปพลิเคชันที่อยู่ระหว่างการทดสอบ ตัวอย่างเช่น ปุ่ม ID, ช่องข้อความ, มุมมองข้อความ...

Selendroid Archiเทคเจอร์

Selendroid จะขึ้นอยู่กับ Android กรอบเครื่องมือวัด. Selendroid การทดสอบเป็นลายลักษณ์อักษรบน Selenium API ไคลเอนต์ไดรเวอร์เว็บ ดังนั้นจึงรองรับการบูรณาการอย่างสมบูรณ์กับปัจจุบัน Selenium กรอบ

รูปต่อไปนี้อธิบายสถาปัตยกรรมของ Selendroid

Selendroid Archiเทคเจอร์

Selendroid ประกอบด้วยส่วนประกอบหลัก 4 ส่วน คือ

Selendroid Archiเทคเจอร์

  • ไคลเอ็นต์ไดร์เวอร์เว็บ – The Java ไลบรารีไคลเอนต์ตาม Selenium- ควรติดตั้งไลบรารีนี้บนคอมพิวเตอร์ (ซึ่งใช้ในการพัฒนากรณีทดสอบ)
  • Selendroid-เซิร์ฟเวอร์ - เซิร์ฟเวอร์ที่ทำงานอยู่ในแอปที่อยู่ระหว่างการทดสอบ Android อุปกรณ์หรือเครื่องจำลอง นี่คือส่วนประกอบหลักของก Selendroid สถาปัตยกรรม
  • Android Driver-App – ในตัว Android ไดรเวอร์แอป Web View เพื่อทดสอบเว็บบนมือถือ
  • Selendroid-แบบสแตนด์อโลน – ส่วนประกอบนี้ใช้สำหรับการติดตั้ง Selendroid เซิร์ฟเวอร์และแอปพลิเคชันภายใต้การทดสอบ (AUT)

เริ่มต้นด้วย Selendroid

คุณได้ทราบถึงความสำคัญของการแล้ว Selendroid- ตอนนี้เรามาทำให้มือของเราสกปรกด้วย Selendroid.

ควรทำ 3 ขั้นตอนก่อนการทดสอบครั้งแรกด้วย Selendroid

เริ่มต้นด้วย Selendroid

การตั้งค่า a Selendroid สิ่งแวดล้อม

Selendroid สามารถทำงานบน Window, ลินุกซ์ และแมคโอเอส ในบทช่วยสอนนี้ เราจะตั้งค่า Selendroid ในระบบปฏิบัติการ Window

ก่อนที่จะใช้ Selendroidคุณต้องติดตั้งแพ็คเกจต่อไปนี้ก่อน

  • Java SDK (ขั้นต่ำ 1.6)

    คุณต้องยอมรับข้อตกลงใบอนุญาตและดาวน์โหลดตัวติดตั้ง Java (เลือกฐาน x64 หรือ x86 บนระบบปฏิบัติการของคุณ)

    การตั้งค่า a Selendroid สภาพสิ่งแวดล้อม

    ดาวน์โหลดและติดตั้ง Java SDK เป็นซอฟต์แวร์ปกติ

  • รุ่นล่าสุดของ Android SDK
  • คอมพิวเตอร์ของคุณต้องมีอย่างน้อยหนึ่งเครื่อง Android อุปกรณ์เสมือน (AVD) หรือของจริง Android อุปกรณ์ที่เสียบเข้ากับพีซี
  • Selendroid แบบสแตนด์อโลนที่มีการพึ่งพา, Selendroid ไคลเอนต์และ Selenium ไคลเอนต์
  • Eclipse ซอฟต์แวร์
  • ตั้งค่า JAVA_HOME และ ANDROID_HOME

    ขั้นตอน 1) บนหน้าต่าง คลิกขวาที่คอมพิวเตอร์ -> อสังหาริมทรัพย์ -> การตั้งค่าระบบขั้นสูง

    การตั้งค่า a Selendroid สภาพสิ่งแวดล้อม

    ขั้นตอน 2) หน้าต่าง System Properties ปรากฏขึ้น เลือกแท็บ Advanced -> ตัวแปรสภาพแวดล้อม

    การตั้งค่า a Selendroid สภาพสิ่งแวดล้อม

    ขั้นตอน 3) หน้าต่าง Environment จะแสดง คลิก New -> ป้อนตัวแปร ANDROID_HOME ดังต่อไปนี้

    การตั้งค่า a Selendroid สภาพสิ่งแวดล้อม

    ค่าตัวแปรเป็นเส้นทางไปยัง android-sdks ที่คุณติดตั้งไว้แล้ว

    ค้นหาเส้นทางตัวแปรของระบบ -> Edit -> เพิ่มบรรทัดต่อไปนี้หลังบรรทัดปัจจุบัน

    การตั้งค่า a Selendroid สภาพสิ่งแวดล้อม

    การตั้งค่า a Selendroid สภาพสิ่งแวดล้อม

    คล้ายกับ ANDROID_HOME เพิ่มตัวแปรใหม่ JAVA_HOME ด้วยค่าดังต่อไปนี้

    การตั้งค่า a Selendroid สภาพสิ่งแวดล้อม

    คุณค่าคือเส้นทางสู่คุณ Java การติดตั้งเจดีเค

    ขั้นตอนที่ 4) รีสตาร์ทพีซีของคุณ -> เสร็จสิ้น

วิธีการเปิดตัว Selendroid

ขั้นตอนที่ 1) การรับแอปพลิเคชันภายใต้การทดสอบ

คุณสามารถใช้ที่มีอยู่ Selendroid ทดสอบแอปเพื่อตรวจสอบวิธีการดังกล่าว Selendroid ทำงาน (ลิงค์ เพื่อตัวอย่างการใช้งานภายใต้การทดสอบ)

เมื่อการดาวน์โหลดเสร็จสิ้น ให้คัดลอก APK นี้และไฟล์ด้านบน Selendroid โถแบบสแตนด์อโลน ไปยังโฟลเดอร์ชื่อ “กูรู99″

ขั้นตอนที่ 2) เปิดตัว Selendroid

เปิดเทอร์มินัล Windows & ไปที่โฟลเดอร์ Guru99 ที่สร้างในขั้นตอนที่ 1

เรียกใช้คำสั่งต่อไปนี้

ยิง Selendroid

ผลลัพธ์จะแสดงดังต่อไปนี้

ยิง Selendroid

หลังจากรันคำสั่งนี้แล้ว Selendroidเซิร์ฟเวอร์ HTTP แบบสแตนด์อโลนเริ่มต้นแล้ว! หมายเลขพอร์ตเริ่มต้นของเซิร์ฟเวอร์นี้คือ 4444 อุปกรณ์ฮาร์ดแวร์ทั้งหมดรวมถึง Android อุปกรณ์เสมือนจะถูกสแกนและจดจำโดยอัตโนมัติ Selendroid จะระบุ Android เวอร์ชันเป้าหมายและขนาดหน้าจอของอุปกรณ์

เพื่อตรวจสอบไฟล์ Android เวอร์ชันเป้าหมายรวมถึงข้อมูลอุปกรณ์ คุณสามารถเปิดใช้งาน URL ต่อไปนี้บนเบราว์เซอร์ได้: http://localhost:4444/wd/hub/status.

ยิง Selendroid

Selendroid คำสั่งพื้นฐาน

ส่วนนี้จะแนะนำพื้นฐานบางอย่างแก่คุณ Selendroid- บรรทัดคำสั่งแบบสแตนด์อโลน คุณสามารถใช้มันเพื่อตั้งค่า Selendroid สภาพแวดล้อมการทดสอบ

  1. การตั้งค่าพอร์ตของ Selendroid

    พอร์ตเริ่มต้นของ Selendroid คือ 4444 แต่คุณสามารถเปลี่ยนเป็นพอร์ตอื่นได้โดยเพิ่มพารามิเตอร์ให้กับคำสั่งเพื่อเปิดใช้งาน Selendroid

    พารามิเตอร์: -พอร์ต [หมายเลขพอร์ต]

    ตัวอย่างเช่น:

    Selendroid คำสั่งพื้นฐาน

    ในคำสั่งข้างต้น 5555 คือพอร์ตใหม่

ดังนั้น URL ที่จะตรวจสอบ Android เวอร์ชันเป้าหมายเปลี่ยนเป็น: http://localhost:5555/wd/hub/status

  1. ระบุตำแหน่งของแอปพลิเคชันภายใต้การทดสอบ (ไฟล์ APK ไบนารี) Selendroid มักต้องการเส้นทางที่แน่นอนสำหรับไฟล์นี้

    พารามิเตอร์: -app [เส้นทางไฟล์]

    ตัวอย่างเช่น:

    Selendroid คำสั่งพื้นฐาน

    ในคำสั่งข้างต้น Selendroid ค้นหาฐานไฟล์ไบนารีบน “C:\Guru99App.apk” โดยอัตโนมัติเพื่อรับข้อมูลของแอปพลิเคชันที่อยู่ระหว่างการทดสอบ

    ตรวจสอบ URL http://localhost:4444/wd/hub/statusคุณจะเห็นข้อมูลนี้

    Selendroid คำสั่งพื้นฐาน

  2. เปลี่ยนพอร์ต Selendroid ใช้เพื่อสื่อสารกับเซิร์ฟเวอร์เครื่องมือวัด Selendroid ใช้พอร์ต 8080 เป็นค่าเริ่มต้น

    พารามิเตอร์: -selendroidServerPort [หมายเลขพอร์ต]

    ตัวอย่าง

    Selendroid คำสั่งพื้นฐาน

    ตอนนี้พอร์ตเปลี่ยนเป็น 9000

  3. เปลี่ยนการหมดเวลาเพื่อเริ่มโปรแกรมจำลอง มีหน่วยเป็นมิลลิวินาที

    พารามิเตอร์: -timeoutEmulatorStart

    โดยค่าเริ่มต้น Selendroid จะรอ 300,000 มิลลิวินาทีจนกว่าโปรแกรมจำลองจะเริ่มทำงาน คุณสามารถเปลี่ยนเป็นการหมดเวลาใหม่ (200,000 ms) ตามคำสั่ง

    Selendroid คำสั่งพื้นฐาน

    หลังจากเวลานี้ของเราหมดอายุแล้ว หากโปรแกรมจำลองไม่สามารถเริ่มทำงานได้ Selendroid จะส่งข้อผิดพลาดข้อยกเว้น (เกิดข้อผิดพลาดขณะค้นหาอุปกรณ์/โปรแกรมจำลอง) จากนั้นหยุดทำงาน

  4. เมื่อคุณเริ่ม Selendroid คำสั่งบนเทอร์มินัล คุณจะเห็นบันทึกที่พิมพ์ออกมาบนหน้าจอ คุณสามารถเปลี่ยนประเภทของบันทึกที่คุณเห็นได้โดยเพิ่มพารามิเตอร์ต่อไปนี้

    พารามิเตอร์: -logLevel [ประเภทของบันทึก]

    ค่าระดับบันทึก ได้แก่ ERROR, WARNING, INFO, DEBUG และ VERBOSE ค่าเริ่มต้น: ข้อผิดพลาด

    ตัวอย่างเช่น set Selendroid หากต้องการพิมพ์บันทึกคำเตือนเท่านั้น คุณสามารถใช้คำสั่งนี้ได้

    Selendroid คำสั่งพื้นฐาน

    เหตุการณ์ Selendroid พิมพ์เฉพาะบันทึกคำเตือนเท่านั้น

เริ่มการทดสอบครั้งแรกของคุณด้วย Selendroid

ส่วนนี้เป็นคำแนะนำทีละขั้นตอนในการสร้างสคริปต์ทดสอบแรกของคุณโดยใช้ Selendroid

สมมติว่าเรามี Android แอปพลิเคชันภายใต้ชื่อทดสอบ Guru99App แอปพลิเคชันประกอบด้วยช่องข้อความและชื่อปุ่ม "แสดงข้อความ"

ดาวน์โหลด APK ที่นี่

ทดสอบครั้งแรกกับ Selendroid

เราจำเป็นต้องดำเนินการดังต่อไปนี้ กรณีทดสอบ การใช้ Selendroid

กรณีทดสอบ เงื่อนไข ผลผลิตที่คาดหวัง
  1. เปิดแอปพลิเคชัน
  2. กรอกข้อความ “การทดสอบ Guru99” ไปที่ช่องข้อความ
  3. กดปุ่ม “แสดงข้อความ”
มีไบนารีของแอปพลิเคชันที่อยู่ระหว่างการทดสอบ

อุปกรณ์เชื่อมต่อกับพีซี

ข้อความ “แสดงข้อความที่นี่” เปลี่ยนเป็นข้อความ

ผู้ใช้รายใดป้อนในช่องข้อความ

ขั้นตอน 1) สร้าง Java โครงการใน Eclipse

ขั้นตอน 2) เติมซีลีเนียมและ Selendroid ไฟล์ jar ในสภาพแวดล้อม Eclipse

คลิกขวาที่โครงการ Guru99Test -> สร้างเส้นทาง -> เพิ่มภายนอก ArchiVes

ทดสอบครั้งแรกกับ Selendroid

นำทางไปยังโฟลเดอร์ที่เก็บไฟล์ jar

ควรเพิ่มไฟล์ jar 3 ไฟล์

  • selendroid-client-0.10.0.jar : Selendroid ไลบรารีไคลเอ็นต์ Java
  • selendroid-standalone-0.11.0-พร้อมการพึ่งพา: Selendroid ไลบรารีเซิร์ฟเวอร์แบบสแตนด์อโลน
  • เซเลเนียม-java-2.40.0.jar : Selenium ไลบรารีไดร์เวอร์เว็บ

เลือกทั้งหมด -> เลือกเปิดเพื่อเพิ่มไฟล์ jar ให้กับโปรเจ็กต์

ทดสอบครั้งแรกกับ Selendroid

ขั้นตอน 3) หลังจากเพิ่มไลบรารี่ข้างต้นแล้ว ไลบรารีเหล่านั้นจะถูกเพิ่มไปยังไลบรารีอ้างอิงของโปรเจ็กต์ทดสอบ ผู้ทดสอบสามารถใช้ API ของไลบรารีเหล่านั้นเพื่อพัฒนาโปรแกรมทดสอบได้

สร้างแพ็คเกจ “com.guru.test” และเพิ่มไฟล์ java “Guru99Test.java” ดังภาพด้านล่าง

คลิกขวาที่ Guru99Test -> ใหม่ -> แพ็คเกจ

ทดสอบครั้งแรกกับ Selendroid

พิมพ์ com.guru.test ลงในช่อง Name ที่ New Java กล่องโต้ตอบแพ็คเกจ à เสร็จสิ้น

ทดสอบครั้งแรกกับ Selendroid

เหตุการณ์ Eclipse จะสร้างโฟลเดอร์รายการและโฟลเดอร์ย่อยเช่นนี้ในโครงสร้างซอร์สโค้ด

ทดสอบครั้งแรกกับ Selendroid

ขั้นตอน 4) การติดตั้ง TestNG เป็นเวลา Eclipse

In Eclipseช่วยเหลือ -> ติดตั้งซอฟต์แวร์ใหม่ ในกล่องโต้ตอบการติดตั้ง คลิกเพิ่ม และป้อนข้อมูลต่อไปนี้

กดตกลง -> ถัดไปเพื่อติดตั้ง TestNG

ทดสอบครั้งแรกกับ Selendroid

ขั้นตอน 5) คัดลอก Guru99App.apk ไปยังโฟลเดอร์ของ Test App

ทดสอบครั้งแรกกับ Selendroid

ขั้นตอน 6) รับ ID ของแอปพลิเคชันที่อยู่ระหว่างการทดสอบ

สมมติว่าเรามีชื่อไฟล์ APK Guru99App.apk ทำตามขั้นตอนที่อธิบายไว้ในส่วนก่อนหน้า ดำเนินการคำสั่งบนเทอร์มินัล

ทดสอบครั้งแรกกับ Selendroid

เปิดลิงก์ต่อไปนี้ในเบราว์เซอร์: http://localhost:4444/wd/hub/status.

แสดงข้อมูลของอุปกรณ์ ให้คัดลอกค่า appId “com.guru99app:1.0”

ทดสอบครั้งแรกกับ Selendroid

ขั้นตอน 7) เปิดไฟล์ Guru99Test.java (ในโค้ดตัวอย่าง) และเปลี่ยนแปลงดังต่อไปนี้

ทดสอบครั้งแรกกับ Selendroid

เพื่อสร้างเซสชั่นทดสอบใหม่ด้วย Selendroidคุณต้องระบุรหัสแอปในรูปแบบ: com.guru99app:1.0 รหัสแอปนี้สามารถระบุได้ในขั้นตอนที่ 6 หากคุณไม่ได้ตั้งค่ารหัสแอปให้ตรงกับ Android เซสชันการทดสอบจะเกิดข้อผิดพลาดและจะไม่เริ่มทำงาน

หลังจากเริ่มต้นอุปกรณ์ที่พบแล้ว Selendroid สร้างเซิร์ฟเวอร์ selendroid ที่กำหนดเองและติดตั้ง Selendroid เซิร์ฟเวอร์บนนั้น

Selendroid นอกจากนี้ยังติดตั้งแอปพลิเคชันที่กำลังทดสอบและเริ่มต้นเซิร์ฟเวอร์ selendroid บนอุปกรณ์อีกด้วย

หลังจากเริ่มต้นเซสชันการทดสอบสำเร็จแล้ว คำสั่งทดสอบจะเริ่มดำเนินการบนอุปกรณ์ (เช่นการป้อนข้อความ กดปุ่ม…) หากการทดสอบต่อท้ายเซสชันการทดสอบ โปรแกรมจำลองจะหยุดโดยอัตโนมัติ

ขั้นตอน 8) เริ่มเซสชันการทดสอบใหม่

เปิด Selendroid เซิร์ฟเวอร์ใช้คำสั่งต่อไปนี้บนเทอร์มินัลเหมือนขั้นตอนที่ 6

ทดสอบครั้งแรกกับ Selendroid

หลังจาก Selendroid เซิร์ฟเวอร์เริ่มทำงาน เปิดโครงการทดสอบตัวอย่าง Guru99test บน Eclipseตั้งจุดพักที่บรรทัด 77 ในไฟล์ Guru99Test.java โดยดับเบิลคลิกที่บรรทัด 77 -> จุดจะแสดงดังด้านล่าง

ทดสอบครั้งแรกกับ Selendroid

เริ่มเซสชั่นการทดสอบโดยคลิกขวาเพื่อโปรเจ็กต์ Guru99Test -> ดีบักเป็น -> ทดสอบ ทดสอบ

เซสชั่นการทดสอบจะเริ่มตามด้านล่าง

ทดสอบครั้งแรกกับ Selendroid

ขั้นตอน 9) รับองค์ประกอบ Id ของ GUI ของแอปพลิเคชันภายใต้การทดสอบ

หลังจากเซสชันการทดสอบเริ่มต้นได้สำเร็จ ให้เปิดเบราว์เซอร์ นำทางไปยัง URL http://localhost:4444/inspector

คุณจะเห็น Application Under Test เปิดตัวตามด้านล่างนี้

ทดสอบครั้งแรกกับ Selendroid

ใช้การเลื่อนเมาส์ไปที่แต่ละองค์ประกอบ UI ของ AUT (ปุ่ม, ช่องข้อความ, ป้ายกำกับข้อความ) ID ของแต่ละองค์ประกอบจะเน้นในบานหน้าต่างด้านขวา

ทดสอบครั้งแรกกับ Selendroid

หลังจากขั้นตอนนี้ คุณจะได้รับ ID ขององค์ประกอบ UI ด้านบนแต่ละรายการ

  • ปุ่มแสดงรหัสข้อความ: “btnShow"
  • รหัสช่องข้อความ: “แก้ไขข้อความ"
  • รหัสข้อความป้ายกำกับ: “txtView.txtView"

รหัสเหล่านั้นจะถูกใช้ในขั้นตอนถัดไป

ขั้นตอน 10) เข้าโปรแกรมทดสอบตามด้านล่างนี้

โปรแกรมทดสอบการใช้งาน Selendroid ประกอบด้วย 3 ส่วน

ทดสอบการตั้งค่า:

ต่อไปนี้เป็นโค้ดสำหรับการตั้งค่าการทดสอบ ซึ่งจะกำหนดเงื่อนไขสำหรับเซสชันการทดสอบ ในกรณีที่มีข้อผิดพลาด Selendroid จะส่งข้อยกเว้นและแอปทดสอบจะหยุดทำงาน

รหัสประกอบด้วยความคิดเห็นเพื่ออธิบายแต่ละคำสั่ง

package com.guru.test;
		
 import io.selendroid.SelendroidCapabilities;
		import io.selendroid.SelendroidConfiguration;
		import io.selendroid.SelendroidDriver;
		import io.selendroid.SelendroidLauncher;
		import io.selendroid.device.DeviceTargetPlatform;
		
		import org.openqa.selenium.By;
		import org.openqa.selenium.WebDriver;
		import org.openqa.selenium.WebElement;
		import org.testng.Assert;
		import org.testng.annotations.AfterSuite;
		import org.testng.annotations.BeforeSuite;
		import org.testng.annotations.Test;
		
 /**
		 * @author Guru99 Test App using Selendroid
			 * Application under test: Guru99App
		 *
		 */
		public
				class Guru99Test {
				
				     //Declare web driver variable
		    private WebDriver driver;
					   
   
		    /**
		     * Setup the environment before testing
		     * @throws Exception
			     */
		    @BeforeSuite
		    public
					void setUp() throws Exception {
							
        //Start selendroid-standalone during test
		        SelendroidConfiguration config = new SelendroidConfiguration();
			        
		      // Add the selendroid-test-app to the standalone server
		        config.addSupportedApp("Guru99App.apk");
			        
                 
		        //start the standalone server
		        SelendroidLauncher selendroidServer = new SelendroidLauncher(config);
			        selendroidServer.launchSelendroid();
		        
		       // Create the selendroid capabilities
		        SelendroidCapabilities capa = new SelendroidCapabilities();
			        
        
		       // Specify to use selendroid's test app
		        capa.setAut("com.guru99app:1.0");
			       
		       // Specify to use the Android device API 19
		        capa.setPlatformVersion(DeviceTargetPlatform.ANDROID19);
			        
		        // Don't request simulator, use real device
		        capa.setEmulator(false);
			        
         
		        //capa.wait(10000000);
		        
		        // Create instance of Selendroid Driver
		        driver = new SelendroidDriver(capa);
					       
		    }
		

ดำเนินการทดสอบ

ด้านล่างนี้เป็นโค้ดสำหรับดำเนินการทดสอบ รหัสประกอบด้วยความคิดเห็น

ต่อไปนี้เป็นขั้นตอนการทดสอบอีกครั้ง

  1. ป้อนข้อความ “สวัสดีคุรุ”
  2. คลิกปุ่มแสดงข้อความ
  3. รอสักครู่
  4. ตรวจสอบว่าแอปแสดงข้อความเมื่อผู้ใช้ป้อนลงในช่องข้อความ (เช่น แสดงข้อความ "Hello Guru")
 /**
		     * Start execute the test case
		     * 01. Enter the text "Selendroid" to the textfield
		     * 02. Press OK button
		     * @throws Exception
			     */
		    @Test
		    public
					void selendroidTest() throws Exception {
							        
		        // Print the log 
		        System.out.print("Start executing test");
					        
		        // Find the input text field on screen
        // The id of this text field was get from step 9
		        WebElement inputField = driver.findElement(By.id("edtText"));
					        
		        // Verify that the text field enabled so user can enter text
		        Assert.assertEquals("true", inputField.getAttribute("enabled"));
					        
		        // Enter a text to text field
		        inputField.sendKeys("Hello Guru");        
			
         // click Show Text button
        // The id of this button was get from step 9
		        WebElement button = driver.findElement(By.id("btnShow"));
					        button.click();
		        
		        // Delay time to take effect
		        Thread.sleep(5000);
		        
		        //Find the label "Text Show Here" on screen
        // The id of this label was get from step 9
		        WebElement txtView = driver.findElement(By.id("txtView"));
					        
		        //Get the text display on screen
		        String expected = txtView.getText();
		        
		// Verify that the text which user enter on text field is same as text display on screen
		        Assert.assertEquals(expected, inputField.getText());        
		
     }

เสร็จสิ้นการทดสอบ

โค้ดต่อไปนี้จะทำให้การทดสอบเสร็จสมบูรณ์โดยการหยุด Selendroid คนขับรถ

 /**
		     * Stop the Selendroid driver
		     * 
		     */
		    @AfterSuite
		    public
					void tearDown() {
					        driver.quit();
			    }

คุณสามารถดูรายละเอียดได้ในโค้ดตัวอย่างที่รวมอยู่ในบทความนี้

ขั้นตอน 10) ติดตามเรา Android อุปกรณ์ไปยังพีซีผ่านสาย USB จุดสังเกต –

  • โปรดตรวจสอบให้แน่ใจว่าอุปกรณ์ไม่ได้กำหนดค่าการล็อกหน้าจอไว้
  • อุปกรณ์จะต้องเสียบปลั๊กผ่าน USB เข้ากับคอมพิวเตอร์ที่มีการทำงานของส่วนประกอบ selendroid-standalone
  • อุปกรณ์ควรติดตั้งอย่างน้อย Android Target เวอร์ชัน API 10

ขั้นตอน 11) เรียกใช้แอปทดสอบ: คลิกขวาที่ Guru99test -> วิ่งเป็น -> TestNG ทดสอบ

ทดสอบครั้งแรกกับ Selendroid

ขั้นตอน 10) สคริปต์เริ่มดำเนินการดังต่อไปนี้

ทดสอบครั้งแรกกับ Selendroid

ขั้นตอน 12) หลังจากการทดสอบเสร็จสิ้นการดำเนินการ TestNG สร้างรายงานการทดสอบโดยอัตโนมัติดังต่อไปนี้

ทดสอบครั้งแรกกับ Selendroid

ทดสอบครั้งแรกกับ Selendroid

เยี่ยมมาก คุณทำแบบทดสอบเสร็จแล้ว

สรุป

  • Selendroid เป็นเครื่องมือที่ทรงพลังมากสำหรับการทดสอบ Android แอพเนทีฟ แอพไฮบริด รวมถึงเว็บแอพ
  • สามารถใช้ได้กับอุปกรณ์จริงเช่นเดียวกับเครื่องจำลอง
  • นอกจากนี้ยังช่วยให้คุณสามารถรันการทดสอบแบบขนานโดยการรันการทดสอบบนอุปกรณ์หลายเครื่อง
  • ทั้งหมด Selendroid ชุดประกอบด้วยสี่องค์ประกอบ:
    • ไคลเอนต์ไดรเวอร์เว็บ
    • Selendroid-เซิร์ฟเวอร์
    • Android แอพไดรเวอร์
    • Selendroid-ยืนอยู่คนเดียว
  • ในการใช้งาน Selendroid คุณจำเป็นต้อง Java เจดีเค Android SDK และ Eclipse การติดตั้ง