Coded บทช่วยสอนเกี่ยวกับเฟรมเวิร์กการทดสอบอัตโนมัติ UI

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

Coded UI Test (CUIT) เป็นฟีเจอร์การทดสอบอัตโนมัติใน Visual Studio ที่ทดสอบแอปพลิเคชันผ่านทางส่วนติดต่อผู้ใช้ ในที่นี้คุณจะได้เรียนรู้ว่า CUIT คืออะไร ฟีเจอร์ต่างๆ เทคโนโลยีที่รองรับ วิธีการสร้างการทดสอบ และแนวทางปฏิบัติที่ดีที่สุด

  • 🖥️ มันคืออะไร: Coded. การทดสอบ UI คือการทดสอบแอปพลิเคชันผ่านทางส่วนติดต่อผู้ใช้ (UI)
  • 🎬 การบันทึก: บันทึกการทำงานของ UI ใน Visual Studio เพื่อสร้างโค้ดทดสอบ
  • 🧰 เทคโนโลยี: CUIT รองรับเว็บ, WPF, Windows แบบฟอร์ม และเทคโนโลยี UI อื่นๆ
  • 🆚 Vs Selenium/QTP: Like Selenium และ QTPCUIT ช่วยให้การทดสอบ UI เชิงฟังก์ชันเป็นไปโดยอัตโนมัติ
  • 🤖 ความช่วยเหลือจาก AI: เครื่องมือ AI เช่น GitHub Copilot ช่วยสร้างและบำรุงรักษาโค้ดทดสอบ UI

Coded การทดสอบ UI (CUIT)

ซอฟต์แวร์อัตโนมัติทั่วไป การทดสอบ ต้องใช้เครื่องมืออัตโนมัติเช่น Selenium และ QTP. Coded UI มีลักษณะคล้ายกับเครื่องมือเหล่านี้ และมีประโยชน์อย่างยิ่งสำหรับการทดสอบการทำงาน

Coded UI Test (CUIT) ใช้ Visual Studio IDE ในการเขียนสคริปต์ เนื่องจากสามารถบันทึกได้โดยใช้ Visual Studio.

ความหมายของ Coded ทดสอบ UI?

Coded การทดสอบ UI (CUIT) เป็นการทดสอบอัตโนมัติที่ขับเคลื่อนแอปพลิเคชันผ่านทางส่วนติดต่อผู้ใช้ (UI) ดังนั้นจึงเป็นที่มาของชื่อนี้ Coded การทดสอบ UI (CUIT) การทดสอบนี้เกี่ยวข้องกับ การทดสอบการใช้งาน ของการควบคุม UI ตรวจสอบฟังก์ชันการทำงานของแอปพลิเคชันทั้งหมด รวมถึงอินเทอร์เฟซผู้ใช้ นอกจากนี้ยังใช้เพื่อทำให้การทดสอบด้วยตนเองที่มีอยู่เป็นแบบอัตโนมัติอีกด้วย

Coded การทดสอบ UI

การทดสอบ UI Archiเทคเจอร์

Codeคุณสมบัติการทดสอบ UI

Codeคุณสมบัติของ UI ประกอบด้วย

  • การทดสอบสมรรถนะ
  • สร้างโค้ดใน VB/C#
  • บูรณาการกับเรื่องราว ALM
  • สร้าง ปรับใช้ และทดสอบในห้องปฏิบัติการหรือเป็นส่วนหนึ่งของงานสร้าง
  • การวิ่งในพื้นที่ การวิ่งระยะไกล การรวบรวมข้อมูล
  • ความสามารถในการขยายที่หลากหลาย
  • การบันทึกที่รับรู้ถึงเจตนาและการเล่นที่ยืดหยุ่น

Codeเทคโนโลยีที่รองรับสำหรับการทดสอบ UI (CUIT)

ด้วย UI ที่เข้ารหัส ทำให้สามารถทดสอบแอปพลิเคชันที่มี UI (อินเทอร์เฟซผู้ใช้) ได้อย่างง่ายดาย แอปพลิเคชันอาจเป็นแบบหน้าต่างหรือแบบเว็บก็ได้

Coded UI รองรับเทคโนโลยีต่างๆ เช่น

  • แอปพลิเคชันเดสก์ท็อปที่ใช้หน้าต่าง
  • บริการบนเว็บ (SOAP, ASPX ฯลฯ)
  • แอพพลิเคชั่นวินโดว์โฟน
  • ดับบลิวพีเอฟ (Windows การเสนอ Foundation)
  • เว็บแอปพลิเคชัน (HTML, Silverlight, HTML5)

เหตุใดจึงต้องใช้ Coded UI สำหรับการทดสอบอัตโนมัติ

เหตุผลที่แนะนำให้ใช้โค้ด UI สำหรับการทดสอบอัตโนมัติ

  • นักพัฒนาและผู้ทดสอบซอฟต์แวร์สามารถทำงานร่วมกันได้อย่างมีประสิทธิภาพโดยใช้เครื่องมือ/ภาษาเดียวกัน
  • รองรับทั้งเว็บเช่นกัน Windows โครงการ
  • กลไกการระบุองค์ประกอบเป็นคุณสมบัติที่ยอดเยี่ยมใน Coded UI นอกจากนี้ยังรองรับการซิงโครไนซ์ด้วย
  • Playback Engine รองรับคุณสมบัติเช่น 'WaitForControlExist', 'WaitForReadyLevel' ฯลฯ
  • ด้วยความช่วยเหลือของ 'ตัวแทนการทดสอบ' การทดสอบอัตโนมัติสามารถดำเนินการบนเครื่องระยะไกลได้
  • ทีมระบบอัตโนมัติสามารถพัฒนาการทดสอบที่ซับซ้อนได้โดยใช้โค้ด UI พร้อมเฟรมเวิร์กแบบเลเยอร์
  • ผู้ทดสอบซอฟต์แวร์สามารถจับข้อยกเว้นและบันทึกผลลัพธ์ได้อย่างมีประสิทธิภาพโดยใช้ log4net.dll
  • Codeเครื่องมือ d UI รองรับ การเขียนโปรแกรมเชิงพรรณนา- ช่วยให้ผู้ทดสอบซอฟต์แวร์สร้างสถานการณ์อัตโนมัติตามคุณสมบัติของออบเจ็กต์
  • รองรับการควบคุม AJAX

วิธีการสร้าง Coded การทดสอบ UI (CUIT)

ในการสร้างการทดสอบ UI ที่มีการเข้ารหัส คุณสามารถทำได้ดังต่อไปนี้

  • การสร้างจากการบันทึกการกระทำที่มีอยู่ (การแปลงจากการบันทึกการทดสอบด้วยตนเอง)
  • การสร้างการทดสอบ UI ที่เข้ารหัสใหม่ตั้งแต่เริ่มต้น
  • การเขียนโค้ดตั้งแต่เริ่มต้น

เนื้อหาของก Coded การทดสอบ UI

เมื่อคุณสร้างการทดสอบ UI ที่เข้ารหัส ตัวสร้างการทดสอบ UI ที่เข้ารหัสจะสร้างแผนที่ ซึ่งรวมถึง UI ภายใต้การทดสอบ วิธีทดสอบ พารามิเตอร์ การยืนยัน ฯลฯ สำหรับการทดสอบแต่ละครั้ง ยังสร้างไฟล์คลาสด้วย

เนื้อไม่มีมัน คอนเทนต์ แก้ไขได้
UIMap.Designer.cs ส่วนการประกาศคุณสมบัติวิธีคลาส UIMap ไม่
UIMap.cs คลาส UIMap (บางส่วน) มี (ใบกำกับภาษีเต็มรูปแบบ)
CodedUITest1.cs Codeเมธอดและคุณสมบัติของคลาส UITest1 มี (ใบกำกับภาษีเต็มรูปแบบ)
UIMap.uitest แมป XML ของ UI สำหรับการทดสอบ ได้รับการแก้ไขผ่านโปรแกรมแก้ไขแผนที่ UI เท่านั้น ไม่
  1. UIMap.Designer.cs : ผู้ออกแบบประกอบด้วยมุมมองโค้ดของ UIMap มันถูกสร้างขึ้นเมื่อผู้ทดสอบบันทึกการโต้ตอบ UI บางอย่างหรือเมื่อมีการเพิ่มออบเจ็กต์บางอย่างลงใน UIMap ด้วยตนเอง
  2. UIMap.cs: การแก้ไขหรือปรับแต่งใดๆ ที่ทำกับ UIMap จะถูกเก็บไว้ในไฟล์นี้ ในตอนแรก ไฟล์นี้จะว่างเปล่าและสามารถเติมข้อมูลในภายหลังได้ หากทำการแก้ไขกับไฟล์ UIMap.designer.cs โดยตรง โปรดแน่ใจว่าไม่ได้บันทึกไว้ มิฉะนั้น การเปลี่ยนแปลงทั้งหมดจะสูญหาย
  • CodedUITest1.cs: ไฟล์นี้มีคลาสการทดสอบ UI ที่เข้ารหัส วิธีทดสอบ การร้องขอการยืนยัน และการเรียกใช้เมธอด การยืนยันและวิธีการทั้งหมดจะถูกเรียกใช้จากไฟล์นี้ตามค่าเริ่มต้น
  • UIMap.uitest:เป็นการแสดง XML ของคลาส UIMap ซึ่งประกอบด้วยหน้าต่าง ตัวควบคุม คุณสมบัติ วิธีการ การดำเนินการ และการยืนยัน แก้ไขได้เฉพาะผ่านตัวแก้ไข UI Map เท่านั้น

ต่อไปในนี้ Codeในบทเรียน UI นี้ เราจะเรียนรู้วิธีการดำเนินการ Coded การทดสอบระบบอัตโนมัติ UI

วิธีการดำเนินการ Coded การทดสอบ UI

Coded UI มีวิธีการทดสอบแอปพลิเคชันของคุณสองวิธีที่แตกต่างกัน

  1. Coded UI บันทึกและเล่นซ้ำ หรือ
  2. Coded UI การเขียนโค้ดด้วยมือ

คุณต้องทำตามขั้นตอนต่อไปนี้เพื่อดำเนินการ Coded การทดสอบ UI

  1. สร้าง Codeโครงการทดสอบเมาแล้วขับ
  2. เพิ่มไฟล์ทดสอบ UI ที่เข้ารหัส
  3. บันทึกลำดับของการกระทำ
  4. ตรวจสอบค่าในฟิลด์ UI เช่นกล่องข้อความ
  5. ดูรหัสทดสอบที่สร้างขึ้น
  6. เพิ่มการกระทำและการยืนยันเพิ่มเติม
  7. แก้ไขรายละเอียดกิจกรรมทดสอบและการยืนยัน
  8. เรียกใช้การทดสอบ

แนวทางปฏิบัติที่ดีที่สุดสำหรับ Coded การทดสอบ UI (CUIT)

ต่อไปนี้เป็นแนวทางปฏิบัติที่ดีที่สุดบางประการสำหรับ Coded. เฟรมเวิร์กสำหรับการทดสอบ UI อัตโนมัติ:

  • ใช้ Coded. สร้างแบบทดสอบอัตโนมัติ UI ทุกครั้งที่เป็นไปได้
  • พยายามอย่าแก้ไขไฟล์ UIMap.designer.cs โดยตรง มิฉะนั้น การเปลี่ยนแปลงที่คุณทำกับไฟล์จะถูกเขียนทับ
  • สร้างการทดสอบของคุณเป็นลำดับของวิธีการที่บันทึกไว้
  • แต่ละวิธีที่บันทึกไว้ควรทำงานบนหน้าเดียว แบบฟอร์ม หรือกล่องโต้ตอบ นอกจากนี้ ให้สร้างวิธีการทดสอบใหม่สำหรับแบบฟอร์ม หน้า หรือกล่องโต้ตอบใหม่แต่ละอัน
  • เมื่อคุณสร้างวิธีการ แทนที่จะใช้ชื่อเริ่มต้น ให้ใช้ชื่อวิธีการที่มีความหมาย ชื่อที่มีความหมายช่วยระบุวัตถุประสงค์ของวิธีการ
  • หากเป็นไปได้ ให้จำกัดแต่ละวิธีที่บันทึกไว้ให้น้อยกว่า 10 การดำเนินการ วิธีการนี้ทำให้ง่ายต่อการแทนที่วิธีการหาก UI เปลี่ยนแปลง
  • ในการสร้างการยืนยัน ให้ใช้ Codeเครื่องมือสร้างการทดสอบ dUI จะเพิ่มวิธีการยืนยัน (assertion method) ลงในไฟล์ UIMap.Designer.cs โดยอัตโนมัติ
  • บันทึกวิธีทดสอบ/วิธีการยืนยันอีกครั้ง หากอินเทอร์เฟซผู้ใช้เปลี่ยนแปลงหรือบันทึกซ้ำส่วนที่ได้รับผลกระทบจากวิธีทดสอบที่มีอยู่
  • หากคุณกำลังเขียนโค้ดโดยตรงด้วย API ให้ใช้วิธีการและคุณสมบัติในคลาสที่สร้างในไฟล์ UIMap.Designer.cs ชั้นเรียนเหล่านี้จะทำให้งานของคุณน่าเชื่อถือและง่ายขึ้น และจะช่วยให้คุณมีประสิทธิผลมากขึ้น

เปรียบเทียบ Coded การทดสอบ UI เทียบกับ Selenium Vs QTP

ตารางเปรียบเทียบด้านล่างนี้คือตารางเปรียบเทียบของ Coded UI Vs Selenium Vs QTP:

  • Selenium ไม่รองรับ WPF ใด ๆ เช่นกัน Windows การใช้งาน
  • Visual Studio CodedUI รองรับการทดสอบแอปพลิเคชัน Window store รวมถึงการทดสอบแอปพลิเคชัน Window Phone ไม่มีเครื่องมืออื่นรองรับสิ่งนี้
  • การทดสอบเสร็จสมบูรณ์รองรับ Window Application แต่จำเป็นต้องติดตั้งปลั๊กอิน

Coded การทดสอบ UI เทียบกับ Selenium Vs QTP

เปรียบเทียบ Coded การทดสอบ UI เทียบกับ Selenium Vs QTP

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

Coded. การทดสอบ UI คือการทดสอบอัตโนมัติที่ขับเคลื่อนแอปพลิเคชันผ่านทางส่วนติดต่อผู้ใช้ Visual Studio จะบันทึกการกระทำของ UI และสร้างสคริปต์การทดสอบ C# หรือ VB.NET

CUIT รองรับแอปพลิเคชันบนเว็บ Windows การเสนอ Foundation (WPF) Windows แบบฟอร์ม และเทคโนโลยี UI อื่นๆ ทั้งบนเดสก์ท็อปและเว็บเบราว์เซอร์

ใน Visual Studio ให้เพิ่ม Coded โปรเจ็กต์ทดสอบ UI จากนั้นบันทึกการกระทำของ UI ด้วย Coded. UI Test Builder หรือเขียนด้วยตนเอง ตัวบันทึกจะสร้าง UIMap และเมธอดทดสอบให้

ทั้งสามโปรแกรมนี้ทำการทดสอบการทำงานของ UI โดยอัตโนมัติ Selenium กำหนดเป้าหมายไปที่เว็บเบราว์เซอร์ QTP รองรับเทคโนโลยีมากมาย และ Coded UI ถูกรวมเข้ากับ Visual Studio สำหรับ .NET

A Coded การทดสอบ UI ประกอบด้วย UIMap.Designer.cs, UIMap.cs, Codeไฟล์ dUITest1.cs และ UIMap.uitest ไฟล์ UIMap จะเก็บคำจำกัดความขององค์ประกอบ UI และไฟล์ทดสอบจะเก็บวิธีการทดสอบ

ผู้ช่วย AI เช่น GitHub Copilot จะเติมข้อความอัตโนมัติสำหรับเมธอดทดสอบ สร้างข้อความยืนยัน และแนะนำตัวเลือกสำหรับการทดสอบ Coded UI หรือ Selenium สคริปต์ทดสอบ

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

Coded UI Test ถูกยกเลิกการใช้งานใน Visual Studio 2019 และไม่มีอยู่ใน Visual Studio 2022 Microsoft แนะนำทางเลือกอื่นๆ เช่น Selenium or Appium สำหรับโครงการใหม่ๆ

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