จัดเก็บตัวแปร, Echo, Alert, PopUp จัดการ Selenium IDE

⚡ สรุปอย่างชาญฉลาด

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

  • 🔘 สร้างตัวแปร: คำสั่ง store จะรับค่าใน Target และชื่อตัวแปรในค่า (Value)
  • ☑️ อ่านทบทวนดู: ใส่เครื่องหมาย ${ } ครอบชื่อทุกครั้งที่คำสั่งรับเป้าหมายหรือค่า
  • พิมพ์เพื่อใช้ในการแก้ไขข้อผิดพลาด: คำสั่ง `echo` จะเขียนข้อความหรือตัวแปรลงในบันทึกของ IDE โดยตรง
  • 🧪 ระบบจะยอมรับการแจ้งเตือนโดยอัตโนมัติ: IDE จะคลิกตกลงให้คุณโดยอัตโนมัติ จากนั้นใช้ storeAlert เพื่อบันทึกข้อความที่ได้รับ
  • 🛠️ การยืนยันจำเป็นต้องมีการตัดสินใจ: วางคำสั่ง chooseOkOnNextConfirmation ไว้ก่อนคำสั่งที่เปิดกล่องโต้ตอบ
  • 📊 การสลับหน้าต่าง: ฟังก์ชัน selectWindow จะกำหนดเป้าหมายไปยังชื่อหน้าต่าง และหากกำหนดเป้าหมายเป็นค่าว่าง จะกลับไปยังหน้าต่างหลัก

จัดเก็บตัวแปร การจัดการเสียงสะท้อน การแจ้งเตือน และป๊อปอัพ Selenium IDE

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

⚠️ หมายเหตุเกี่ยวกับเวอร์ชัน: ภาพหน้าจอด้านล่างมาจากต้นฉบับ Firefox-เสียบเข้าไป Selenium IDE และคำสั่งต่างๆ ใช้ชื่อแบบ camelCase Selenese Chrome เวอร์ชันปัจจุบัน Firefox และส่วนขยาย Edge ยังคงมีพฤติกรรมเหมือนเดิม แต่จะเขียนชื่อคำสั่งส่วนใหญ่โดยมีช่องว่างคั่น แผนที่ping ตารางดังกล่าวปรากฏอยู่ใกล้ท้ายบทความนี้ และคำสั่งและภาพหน้าจอต้นฉบับทั้งหมดได้รับการเก็บรักษาไว้ตามที่เผยแพร่ไว้

Selenium ตัวแปร IDE

เก็บที่อุณหภูมิ:

เพื่อเก็บตัวแปรไว้ใน Selenium เราใช้ IDE จัดเก็บ คำสั่ง ภาพประกอบด้านล่างแสดงวิธีการเก็บค่า "tutorial" ลงในตัวแปรชื่อ "myVariable"

Selenium คำสั่ง IDE store พร้อมค่า tutorial ที่บันทึกไว้ใน myVariable

ในการเข้าถึงตัวแปร เพียงแค่ใส่ตัวแปรนั้นไว้ในสัญลักษณ์ ${ … } ตัวอย่างเช่น หากต้องการป้อนค่าของ “myVariable” ลงในช่องข้อความ “userName” ของ Mercury ทัวร์ ให้ป้อน ${myVariable} ในช่องค่า

Selenium IDE พิมพ์คำสั่งโดยใช้ ${myVariable} ในช่องค่าของกล่องข้อความชื่อผู้ใช้

คำสั่ง Echo ใน Selenium IDE

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

คำสั่งนี้รองรับได้ทั้งสองรูปแบบ:

  • สตริงตามตัวอักษร ใส่ข้อความลงใน Target ตัวอย่างเช่น ฟิลด์ ขั้นตอนการเข้าสู่ระบบเสร็จสิ้นแล้วเพื่อทำเครื่องหมายจุดตรวจสอบในสคริปต์ที่ยาว
  • ตัวแปรหนึ่งตัว ใส่ ${myVariable} ลงใน Target ค่าที่บันทึกไว้จะถูกพิมพ์ออกมาแทนชื่อฟิลด์

มีสองพฤติกรรมที่ทำให้คำสั่ง echo มีประโยชน์มากกว่าที่คิดไว้ในตอนแรก คือ พิมพ์ค่าตัวแปรทันทีหลังจากคำสั่ง store ที่สร้างตัวแปรนั้นขึ้นมา เพื่อตรวจสอบว่าเกิดข้อผิดพลาดหรือไม่ tracเชื่อมโยงกับการจับภาพมากกว่าการยืนยันในอีกยี่สิบขั้นตอนต่อมา และให้ใส่คำนำหน้าแต่ละข้อความด้วยขั้นตอนที่เกี่ยวข้อง เพราะหน้าต่างบันทึกจะแสดงคำสั่งทั้งหมดในรายการเดียว โปรดทราบว่าคำสั่ง echo จะเขียนลงในบันทึกเท่านั้น — มันจะไม่เปลี่ยนแปลงหน้าและไม่ทำให้การทดสอบล้มเหลว ดังนั้นจึงปลอดภัยที่จะปล่อยไว้ในสคริปต์อย่างถาวร

ร้านค้าองค์ประกอบปัจจุบัน

คำสั่งนี้จะเก็บค่า "true" หรือ "false" ขึ้นอยู่กับการมีอยู่ขององค์ประกอบที่ระบุ สคริปต์ด้านล่างจะเก็บค่าบูลีน "true" ลงใน "var1" และ "false" ลงใน "var2" เพื่อตรวจสอบ เราจะใช้คำสั่ง echo เพื่อแสดงค่าของ var1 และ var2 ฐาน URL สำหรับภาพประกอบด้านล่างนั้นได้ตั้งค่าไว้ที่ Mercury หน้าแรกของทัวร์

Selenium IDE storeElementPresent บันทึกค่า true ลงใน var1 และ false ลงใน var2 ซึ่งแสดงผลในบันทึก (log)

StoreText

คำสั่งนี้ใช้สำหรับเก็บข้อความภายในขององค์ประกอบลงในตัวแปร ภาพประกอบด้านล่างแสดงวิธีการเก็บข้อความภายในของแท็ก h1 ในหน้าลงทะเบียนของ Facebook ลงในตัวแปรชื่อ “textVar”

Selenium คำสั่ง storeText ของ IDE อ่านค่า css=h1 ลงในตัวแปร textVar

เนื่องจากเป็นองค์ประกอบประเภทเดียวบนหน้าเว็บ จึงปลอดภัยที่จะใช้ “css=h1” เป็นเป้าหมาย ภาพด้านล่างแสดงให้เห็นถึงสิ่งนั้น Selenium IDE สามารถบันทึกข้อความ "Sign Up" ลงในตัวแปร "textVar" ได้ เนื่องจากคำสั่ง echo แสดงค่าออกมาอย่างถูกต้อง

Selenium ช่องบันทึก IDE แสดงข้อความ "ลงทะเบียน" เป็นค่าที่เก็บไว้ในตัวแปรข้อความ

การแจ้งเตือน ป๊อปอัป และหลายรายการ Windows

การแจ้งเตือนเป็นรูปแบบหน้าต่างป๊อปอัพที่ง่ายที่สุดรูปแบบหนึ่ง เป็นรูปแบบที่พบได้บ่อยที่สุด Selenium คำสั่ง IDE ที่ใช้ในการจัดการการแจ้งเตือนมีดังต่อไปนี้:

การแจ้งเตือน การใช้งาน

ยืนยันการแจ้งเตือน

assertNotAlert

ดึงข้อความแจ้งเตือนและยืนยันข้อความนั้นกับค่าสตริงที่คุณระบุไว้

ยืนยันการแจ้งเตือนปัจจุบัน

assertAlertNotPresent

ยืนยันว่ามีการแจ้งเตือนหรือไม่
ร้านค้าแจ้งเตือน ดึงข้อความแจ้งเตือนและจัดเก็บไว้ในตัวแปรที่คุณระบุ
ร้านค้าAlertPresent ส่งคืนค่า TRUE หากมีการแจ้งเตือน และส่งคืนค่า FALSE หากไม่มีการแจ้งเตือน

ตรวจสอบการแจ้งเตือน

ตรวจสอบ NotAlert

ดึงข้อความแจ้งเตือนและตรวจสอบว่าตรงกับค่าสตริงที่คุณระบุหรือไม่

ตรวจสอบการแจ้งเตือนปัจจุบัน

ตรวจสอบการแจ้งเตือนไม่นำเสนอ

ตรวจสอบว่ามีการแจ้งเตือนหรือไม่

จำสองสิ่งนี้เมื่อทำงานกับการแจ้งเตือน:

  • Selenium IDE จะคลิกปุ่ม OK ในหน้าต่างแจ้งเตือนโดยอัตโนมัติ ดังนั้นคุณจะไม่สามารถเห็นข้อความแจ้งเตือนจริงได้
  • Selenium IDE ไม่สามารถจัดการกับข้อความแจ้งเตือนที่เกิดขึ้นภายในฟังก์ชัน onload() ของหน้าเว็บได้ มันจัดการเฉพาะข้อความแจ้งเตือนที่เกิดขึ้นหลังจากหน้าเว็บโหลดเสร็จสมบูรณ์แล้วเท่านั้น

ในตัวอย่างนี้ เราใช้คำสั่ง storeAlert เพื่อแสดงให้เห็นว่าถึงแม้ว่า Selenium แม้ว่า IDE จะไม่แสดงข้อความแจ้งเตือนจริง แต่ก็ยังสามารถดึงข้อความนั้นมาได้

ขั้นตอน 1) In Selenium IDE ตั้งค่าฐาน URL ไปที่ http://jsbin.com ฉบับเต็ม URL เว็บไซต์คือ http://jsbin.com/usidix โค้ดตัวอย่าง jsbin เหล่านี้มีมาตั้งแต่... Firefox- ปลั๊กอินเวอร์ชันเก่าอาจไม่สามารถแก้ไขได้อีกต่อไป หน้าเว็บใดๆ ที่มีปุ่มที่แสดงการแจ้งเตือนจะแสดงผลลัพธ์เดียวกัน

ขั้นตอน 2) สร้างสคริปต์ตามที่แสดงด้านล่าง คำสั่ง click จะกำหนดเป้าหมายไปที่ปุ่ม Go! คำสั่ง storeAlert จะดักจับข้อความลงใน alertMessage และคำสั่ง echo จะพิมพ์ข้อความนั้นออกมา

Selenium สคริปต์ IDE พร้อมคำสั่ง click, storeAlert และ echo สำหรับหน้าสาธิตการแจ้งเตือนของ jsbin

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

Selenium บันทึก IDE แสดงข้อความแจ้งเตือนที่ดึงมาจาก storeAlert หลังจากการเล่นซ้ำ

การยืนยัน

การยืนยันจะปรากฏเป็นป๊อปอัพที่มีปุ่มตกลงและยกเลิก ต่างจากการแจ้งเตือนที่มีเพียงปุ่มตกลงเท่านั้น คำสั่งที่ใช้ในการจัดการการยืนยันจะเหมือนกับคำสั่งในการแจ้งเตือน

  • assertConfirmation / assertNotConfirmation
  • assertConfirmationPresent / assertConfirmationNotPresent
  • การยืนยันร้านค้า
  • ร้านค้ายืนยันปัจจุบัน
  • ตรวจสอบการยืนยัน / ตรวจสอบไม่ยืนยัน
  • ตรวจสอบว่ามีการยืนยันหรือไม่ / ตรวจสอบว่าไม่มีการยืนยัน

นอกจากนี้ คำสั่งเหล่านี้ยังบอกอีกด้วย Selenium ควรเลือกปุ่มใด ระหว่าง ตกลง หรือ ยกเลิก

  • chooseOkOnNextConfirmation / chooseOkOnNextConfirmationAndWait
  • เลือกCancelOnNextConfirmation

ใส่คำสั่งเหล่านี้ ก่อน คำสั่งที่ทำให้กล่องยืนยันปรากฏขึ้น เพื่อให้ Selenium IDE รู้ล่วงหน้าแล้วว่าจะเลือกตัวเลือกใด ย้ำอีกครั้งว่า คุณจะไม่เห็นกล่องยืนยันจริงระหว่างการเรียกใช้สคริปต์

เรามาทดสอบเว็บเพจที่มีปุ่มซึ่งถูกเขียนโค้ดให้รายงานว่าผู้ใช้กดปุ่ม OK หรือ CANCEL กัน

ขั้นตอน 1) In Selenium IDE ตั้งค่าฐาน URL ไปที่ http://jsbin.com ฉบับเต็ม URL คือ http://jsbin.com/enifaf

ขั้นตอน 2) สร้างสคริปต์ตามที่แสดงด้านล่างนี้ คราวนี้เราจะกดปุ่ม OK ก่อน

Selenium สคริปต์ IDE ที่วางคำสั่ง chooseOkOnNextConfirmation ไว้ก่อนการคลิกที่เปิดกล่องโต้ตอบ

ขั้นตอน 3) รันสคริปต์แล้วสังเกตว่าคุณไม่เห็นการยืนยันจริง แต่เว็บเพจยังคงรายงานว่ากดปุ่มใด Selenium กด IDE แล้ว

หน้าทดสอบรายงานว่าปุ่ม OK ในกล่องโต้ตอบยืนยันถูกกดแล้ว

ขั้นตอน 4) แทนที่คำสั่ง chooseOkOnNextConfirmation ด้วย chooseCancelOnNextConfirmation แล้วเรียกใช้สคริปต์อีกครั้ง ตอนนี้หน้าเว็บจะแสดงตัวเลือกที่ตรงกันข้าม

Selenium แก้ไขสคริปต์ IDE ให้ใช้ chooseCancelOnNextConfirmation แทน chooseOkOnNextConfirmation

แพลตฟอร์มที่หลากหลาย Windows

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

เราใช้คำสั่ง selectWindow เพื่อสลับระหว่างหน้าต่างต่างๆ

เราจะใช้ลิงก์ http://jsbin.com/ocinaj/1 ซึ่งมีชื่อว่า “First Window” ไฮเปอร์ลิงก์ “here” บนหน้านั้นจะเปิด Facebook ในหน้าต่างใหม่ จากนั้นเราจะให้คำแนะนำ Selenium IDE เพื่อทำสิ่งต่อไปนี้:

  • ถ่ายโอนการควบคุมจากหน้าต่างหลักไปยังหน้าต่าง Facebook ที่เปิดใหม่โดยใช้คำสั่ง selectWindow โดยใช้ชื่อหน้าต่างเป็นตัวระบุตำแหน่ง
  • ตรวจสอบชื่อของหน้าต่างใหม่
  • เลือกหน้าต่างเดิมอีกครั้งโดยใช้คำสั่ง selectWindow โดยระบุ "null" เป็นเป้าหมาย
  • ตรวจสอบชื่อของหน้าต่างที่เลือกอยู่ในปัจจุบัน

แผนข้างต้นสามารถแปลงเป็นลำดับขั้นตอนสี่ขั้นตอนดังที่แสดงไว้ด้านล่างนี้

แผนภาพแสดงการสลับจากหน้าต่างหลักไปยังหน้าต่างใหม่ และกลับมายังหน้าต่างหลักอีกครั้ง

ขั้นตอน 1) กำหนดฐาน URL ไปยัง http://jsbin.com

ขั้นตอน 2) สร้างสคริปต์ตามที่แสดงด้านล่าง

Selenium สคริปต์ IDE ที่ใช้ selectWindow, pause และ verifyTitle เพื่อสลับไปมาระหว่างสองหน้าต่าง

เราจำเป็นต้องใช้คำสั่งหยุดชั่วคราวเพื่อรอให้หน้าต่างที่เปิดใหม่โหลดเสร็จก่อนที่เราจะสามารถอ่านชื่อเรื่องได้

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

ผลการผ่านสีเขียวคือ Selenium IDE หลังจากตรวจสอบชื่อหน้าต่างทั้งสองแล้ว

โปรดจำไว้เสมอว่า การตั้งค่าเป้าหมาย selectWindow เป็น “null” จะเลือกหน้าต่างหลักโดยอัตโนมัติ ซึ่งในกรณีนี้คือหน้าต่างที่มีองค์ประกอบ “link=here” อยู่

หมายเหตุ Facebook ได้เปลี่ยนชื่อเพจไปแล้วนับตั้งแต่มีการสร้างบทช่วยสอนนี้ โปรดแก้ไขชื่อเพจที่คาดไว้ในสคริปต์ให้เหมาะสม

ทันสมัย Selenium คำสั่งที่เทียบเท่ากับคำสั่งเหล่านี้ใน IDE

การขอ Firefox-ปลั๊กอิน IDE ถูกยกเลิกการใช้งานเมื่อ Firefox ได้เปลี่ยนไปใช้สถาปัตยกรรม WebExtensions แล้ว และ Chrome เวอร์ชันปัจจุบัน Firefox และส่วนขยาย Edge ได้เปลี่ยนชื่อคำสั่ง Selenese ส่วนใหญ่ให้เป็นรูปแบบที่มีช่องว่าง พฤติกรรมยังคงเหมือนเดิม ดังนั้นตารางด้านล่างนี้จึงเพียงพอสำหรับการอ่านสคริปต์ข้างต้นกับการติดตั้งเวอร์ชันปัจจุบัน

คำสั่งแบบดั้งเดิมในบทช่วยสอนนี้ ปัจจุบัน Selenium คำสั่ง IDE
จัดเก็บ จัดเก็บ
เสียงสะท้อน เสียงสะท้อน
storeText ข้อความร้านค้า
storeElementPresent บันทึกการมีอยู่ขององค์ประกอบ (หรือยืนยันว่ามีองค์ประกอบอยู่)
assertAlert / verifyAlert ยืนยันการแจ้งเตือน / ตรวจสอบการแจ้งเตือน
เลือกตกลงในการยืนยันครั้งต่อไป เลือกตกลงในการยืนยันครั้งถัดไป
เลือกCancelOnNextConfirmation เลือกยกเลิกในการยืนยันครั้งถัดไป
เลือกหน้าต่าง (ชื่อเรื่องเป็นเป้าหมาย) เลือกหน้าต่างที่มีแฮนด์เดิลเป็น ${handle}

มีสองความแตกต่างที่ควรกล่าวถึง ข้อความแจ้งเตือน (Prompts) ซึ่งบทความฉบับเดิมไม่ได้กล่าวถึง ตอนนี้มีคำสั่งเฉพาะของตัวเองแล้ว: ตอบคำถามถัดไป วางแผนคำตอบก่อนที่บทสนทนาจะปรากฏขึ้น และ ตอบกลับ webdriver บนข้อความแจ้งเตือนที่มองเห็นได้ พิมพ์ข้อความลงในช่องป้อนข้อความที่เปิดอยู่แล้ว และการสลับหน้าต่างจะไม่ขึ้นอยู่กับชื่อหน้าอีกต่อไป เรียกใช้ มือจับหน้าต่างร้านค้า เพื่อจับแฮนเดิลก่อน จากนั้นจึงส่งต่อ handle=${yourHandle} เพื่อเลือกหน้าต่าง การเปลี่ยนแปลงนี้จะขจัดโหมดความล้มเหลวที่อธิบายไว้ในหมายเหตุข้างต้น ซึ่งเว็บไซต์จะเปลี่ยนชื่อหน้าเว็บและสคริปต์จะหยุดค้นหาหน้าต่าง อย่างเป็นทางการ Selenium เว็บไซต์โครงการ IDE แสดงรายการชุดคำสั่งปัจจุบันทั้งหมด

คำถามที่พบบ่อย

ใช่แล้ว ${myVariable} และ ${myvariable} อ้างอิงถึงตัวแปรสองตัวที่แตกต่างกัน และการอ้างอิงถึงตัวแปรที่ไม่เคยถูกจัดเก็บไว้จะส่งผลให้ได้สตริงว่างแทนที่จะเกิดข้อผิดพลาด ควรใช้รูปแบบการตั้งชื่อเดียวกันตลอดทั้งชุดโปรแกรมเพื่อหลีกเลี่ยงค่าว่างที่ไม่แสดงผล

ใช่แล้ว ไวยากรณ์ ${ } จะถูกขยายในทุกกรณี Target หรือช่องค่า (Value field) เพื่อให้ใช้งานได้ภายในคำสั่งเปิด (open command), XPath หรือตัวเลือก CSS นั่นคือวิธีการแปลงสคริปต์ที่บันทึกไว้ให้เป็นสคริปต์ที่ขับเคลื่อนด้วยข้อมูลที่เก็บรวบรวมไว้ก่อนหน้านี้ในระหว่างการทำงาน

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

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

ข้อความแจ้งเตือนจำเป็นต้องมีข้อความ ไม่ใช่แค่ตัวเลือกปุ่ม เรียกใช้ฟังก์ชัน "ตอบในข้อความแจ้งเตือนถัดไป" โดยใส่คำตอบไว้ในช่อง "ค่า" ก่อนคำสั่งที่เปิดข้อความแจ้งเตือนนั้น หรือใช้ฟังก์ชัน "ตอบในข้อความแจ้งเตือนที่มองเห็นได้" ของ WebDriver เมื่อกล่องโต้ตอบปรากฏบนหน้าจอแล้ว

เครื่องมือการเรียนรู้ของเครื่องสามารถเสนอชุดคำสั่งจากคำอธิบายสถานการณ์ด้วยภาษาธรรมดา และแนะนำตัวระบุตำแหน่งที่แม่นยำกว่าที่เครื่องบันทึกสร้างขึ้นได้ การซ่อมแซมตัวระบุตำแหน่งด้วยความช่วยเหลือจาก AI ก็มีประโยชน์เช่นกัน เนื่องจากโดยปกติแล้วการเปลี่ยนชื่อองค์ประกอบเป็นสาเหตุที่ทำให้ค่าที่บันทึกไว้ว่างเปล่า

ใช่ ส่งออกการทดสอบไปยัง Java or Pythonจากนั้นให้ Copilot ปรับโครงสร้างรายการคำสั่งแบบแบนให้เป็นอ็อบเจ็กต์เพจและตัวรอที่นำกลับมาใช้ใหม่ได้ ตรวจสอบการจัดการการแจ้งเตือนด้วยตนเอง เนื่องจากโค้ดที่สร้างขึ้นมักจะสมมติว่ามีกล่องโต้ตอบที่มองเห็นได้ซึ่ง IDE ได้ปิดไปแล้ว

การเลือกโดยใช้ชื่อหน้าต่างอาจทำให้เกิดความคลุมเครือและอาจเลือกหน้าต่างผิดได้ นี่คือเหตุผลที่ IDE ปัจจุบันนิยมใช้แฮนเดิลมากกว่า: บันทึกแฮนเดิลของหน้าต่างด้วยคำสั่ง `store window handle` ทันทีหลังจากที่หน้าต่างเปิด จากนั้นสลับหน้าต่างด้วยคำสั่ง `handle=${yourHandle}`

สรุปโพสต์นี้ด้วย: