วิธีดำเนินการกรณีทดสอบที่ล้มเหลวใน TestNG

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

ดำเนินการทดสอบกรณีล้มเหลวใน TestNG ช่วยให้ผู้ทดสอบสามารถแยกและเรียกใช้การทดสอบที่ไม่ผ่านซ้ำได้เท่านั้น ซึ่งช่วยประหยัดเวลาและลดการดำเนินการซ้ำซ้อนในชุดการทดสอบทั้งหมด

  • 🛠️ การตั้งค่าโครงการ: สร้าง Java โครงการใน Eclipseเพิ่ม TestNG และ Selenium ไลบรารี JAR และกำหนดคลาสทดสอบสองคลาส (DemoA และ DemoB)
  • 🔄 TestNG การแปลง: แปลง Java ชั้นเรียนไปยัง TestNG เปิดใช้งานชุดโปรแกรมโดยคลิกขวาแล้วเลือก TestNG ตัวเลือกแปลงเพื่อสร้างไฟล์ testng.xml
  • ???? การเรียกใช้งานผ่านบรรทัดคำสั่ง: เรียกใช้ชุดทดสอบ testng.xml จากพรอมต์คำสั่งโดยใช้คำสั่ง java -cp พร้อมระบุ classpath ที่ถูกต้องให้ชี้ไปยังโฟลเดอร์ lib และ bin
  • ตรวจพบการทดสอบล้มเหลว: TestNG ระบบจะสร้างไฟล์ testng-failed.xml โดยอัตโนมัติภายในโฟลเดอร์ test-output ทุกครั้งที่มีกรณีทดสอบอย่างน้อยหนึ่งกรณีล้มเหลว
  • 🔁 เรียกใช้การทดสอบที่ล้มเหลวซ้ำ: เรียกใช้ไฟล์ testng-failed.xml จาก Eclipse (เรียกใช้ในฐานะ) TestNG (ชุดทดสอบ) หรือใช้บรรทัดคำสั่งเพื่อเรียกใช้เฉพาะกรณีทดสอบที่ล้มเหลวอีกครั้ง

สร้าง Selenium โครงการ

เตรียมโปรเจ็กต์ให้พร้อมก่อนแปลงเป็น TestNGขั้นตอนด้านล่างนี้จะอธิบายขั้นตอนการสร้าง Java โครงการใน Eclipseรวมถึงการตั้งค่าโครงสร้างแพ็กเกจและการเพิ่มไลบรารี JAR ที่จำเป็น

ขั้นตอน 1) In Eclipse, สร้าง a Java สร้างโปรเจ็กต์โดยคลิกที่ "ใหม่" Java โครงการ.

สร้าง Selenium โครงการ

ขั้นตอน 2) ในขั้นตอนนี้:

  1. ตั้งชื่อให้กับโครงการนี้
  2. เลือกสภาพแวดล้อมการทำงาน
  3. เลือกตัวเลือกเค้าโครงโครงการ
  4. คลิก เสร็จสิ้น ปุ่ม

สร้าง Selenium โครงการ

หลังจากคลิกเสร็จสิ้นแล้ว โครงการทดสอบ Java โปรเจ็กต์ถูกสร้างขึ้นแล้วและจะปรากฏใน Package Explorer

สร้าง Selenium โครงการ

ขั้นตอน 3) เปิดโปรเจ็กต์ที่สร้างขึ้นใหม่ คุณจะเห็น... สิ่งอำนวยความสะดวก โฟลเดอร์ใน Package Explorer

  1. คลิกขวาที่โปรเจ็กต์แล้วเลือก ใหม่.
  2. เลือก แพ็คเกจ ตัวเลือก

สร้าง Selenium โครงการ

ขั้นตอน 4) ในขั้นตอนนี้:

  1. เข้าไปที่โฟลเดอร์ src แล้วเลือกแพ็กเกจ
  2. ตั้งชื่อให้กับบรรจุภัณฑ์นั้น
  3. คลิก เสร็จสิ้น(ชื่อแพ็กเกจ: com.test)

สร้าง Selenium โครงการ

หลังจากคลิก เสร็จสิ้นโครงสร้างของโครงการจะเป็นดังนี้:

สร้าง Selenium โครงการ

ขั้นตอน 5) ในขั้นตอนนี้:

  1. คลิกขวาที่แพ็กเกจที่สร้างขึ้นใหม่
  2. เลือก ชั้น ตัวเลือก

สร้าง Selenium โครงการ

หน้าต่างใหม่จะเปิดขึ้น

ขั้นตอน 6) ในขั้นตอนนี้:

  1. ตั้งชื่อให้กับชั้นเรียน
  2. เลือกตัวปรับแต่ง
  3. เรียกดูและเลือกคลาสแม่ java.lang.Object
  4. คลิก เสร็จสิ้น.

ในที่นี้ คุณกำลังสร้างคลาสสองคลาส: เดโมเอ และ เดโมบี.

ขั้นแรก สร้างคลาส DemoA ขึ้นมา

สร้าง Selenium โครงการ

หลังจากคลิก เสร็จสิ้นคลาสจะถูกสร้างขึ้น:

สร้าง Selenium โครงการ

ในทำนองเดียวกัน ให้สร้างคลาส DemoB:

สร้าง Selenium โครงการ

ขั้นตอน 7) หากคุณได้ติดตั้ง TestNG ห้องสมุด คลิกที่ Java โครงการ → อสังหาริมทรัพย์.

สร้าง Selenium โครงการ

ขั้นตอน 8) ในหน้าต่าง Properties:

  1. คลิกที่ Java สร้างเส้นทาง.
  2. คลิกที่ ห้องสมุด.
  3. คลิกที่ เพิ่มไลบรารี.

สร้าง Selenium โครงการ

ถัดไป:

  1. คลิกที่ TestNG แล้วก็
  2. คลิกที่ ถัดไป.

สร้าง Selenium โครงการ

จากนั้นคลิกปุ่ม เสร็จสิ้น ปุ่ม

สร้าง Selenium โครงการ

หลังจากนี้ให้เขียนโค้ดต่อไปนี้

สำหรับตัวอย่างการสาธิตในชั้นเรียน A:

สร้าง Selenium โครงการ

Code คำอธิบาย:

  • driver.manage().window().maximize(); — ขยายหน้าต่างเบราว์เซอร์ให้เต็มจอ
  • driver.get("https://www.google.co.in"); — ป้อนค่าที่ระบุ URL ในช่องที่อยู่
  • driver.findElement(By.name("q")).sendKeys("Hi"); — ระบุตำแหน่ง Google ใช้ช่องค้นหาและป้อนข้อความโดยใช้วิธี sendKeys

Output: โปรแกรมข้างต้นมีข้อผิดพลาด จึงไม่สามารถเรียกใช้งานได้โดยตรง

ในทำนองเดียวกัน สำหรับคลาส DemoB:

สร้าง Selenium โครงการ

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

สร้าง Selenium โครงการ

ขั้นตอนที่ 8 (ต่อ) ในหน้าต่าง Properties:

  1. คลิกที่ Java สร้างเส้นทาง ในบานหน้าต่างนำทางด้านซ้าย
  2. คลิกที่ ห้องสมุด แถบ
  3. คลิก เพิ่มไฟล์ JAR ภายนอก และเลือก Selenium ไฟล์ JAR แบบสแตนด์อโลน
  4. คลิก OK.

สร้าง Selenium โครงการ

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

ขั้นตอน 9) ในขั้นตอนนี้:

  1. คลิกขวาที่โปรเจ็กต์แล้วเลือก โฟลเดอร์ ตัวเลือกในการสร้างโฟลเดอร์ชื่อ lib.
  2. วาง TestNG เจอาร์และ Selenium JAR (selenium-server-standalone ) ลงในโฟลเดอร์นี้ ดาวน์โหลดไฟล์ JAR ทั้งสองไฟล์จากเว็บ คัดลอก แล้วคลิกขวาที่โฟลเดอร์ lib ใน Eclipse แล้วเลือก วาง (Paste)

สร้าง Selenium โครงการ

ขั้นตอน 10) ในขั้นตอนนี้:

  1. เลือกโฟลเดอร์หลัก
  2. ตั้งชื่อโฟลเดอร์ lib(โฟลเดอร์นี้จำเป็นสำหรับการเรียกใช้งานผ่านบรรทัดคำสั่งเท่านั้น ไม่จำเป็นต้องใช้เมื่อเรียกใช้ testng.xml จากภายนอก) Eclipse.)
  3. คลิก เสร็จสิ้น.

สร้าง Selenium โครงการ

หลังจากสร้างโฟลเดอร์แล้ว ขั้นตอนต่อไปคือการแปลงโปรแกรม DemoA และ DemoB ให้เป็นไฟล์ testng.xml

แปลงและดำเนินการ Selenium โครงการเพื่อ TestNG

ขั้นตอน 1) ในขั้นตอนนี้:

  1. เลือกสองข้อ Java เลือกไฟล์ในแพ็กเกจแล้วคลิกขวา
  2. เลือก TestNG ตัวเลือก
  3. คลิก เปลี่ยนเป็น TestNG.

แปลงและดำเนินการ Selenium โครงการเพื่อ TestNG

ขั้นตอน 2) หน้าต่างใหม่จะเปิดขึ้น กรุณาป้อนรายละเอียดต่อไปนี้:

  1. สถานที่
  2. ชื่อห้องชุด
  3. ชื่อการทดสอบ
  4. การเลือกชั้นเรียน
  5. โหมดคู่ขนาน
  6. คลิก เสร็จสิ้น.

แปลงและดำเนินการ Selenium โครงการเพื่อ TestNG

ไฟล์ testng.xml ถูกสร้างขึ้นภายใต้ Java โปรเจ็กต์นี้จะออกมาเป็นแบบนี้:

แปลงและดำเนินการ Selenium โครงการเพื่อ TestNG

(เพื่อเรียกใช้ testng.xml จาก) Eclipseคลิกขวาที่ไฟล์ใน Package Explorer แล้วเลือก เรียกใช้เป็น TestNG ชุด.)

ขั้นตอน 3) ไฟล์ชุด testng.xml จะมีลักษณะดังนี้:

แปลงและดำเนินการ Selenium โครงการเพื่อ TestNG

หากคุณต้องการเรียกใช้ DemoA ก่อน ให้ลบบรรทัดของ DemoA ออก แล้วเพิ่มเข้าไปก่อน DemoB:

แปลงและดำเนินการ Selenium โครงการเพื่อ TestNG

แปลงและดำเนินการ Selenium โครงการเพื่อ TestNG

ขั้นตอน 4) หลังจากรันไฟล์ testng.xml แล้ว ผลลัพธ์จะแสดงดังต่อไปนี้ (ไม่มีข้อความแสดงผลในคอนโซล เนื่องจากไม่มีการเขียนคำสั่ง System.out.println() ใดๆ)

แปลงและดำเนินการ Selenium โครงการเพื่อ TestNG

นี่เป็นวิธีหนึ่งในการดำเนินการทดสอบผ่าน Eclipseหากต้องการเรียกใช้ชุดทดสอบ testng.xml เดียวกันจากพรอมต์คำสั่ง ให้ทำตามขั้นตอนด้านล่าง

ดำเนินงาน TestNG ผ่านทางบรรทัดคำสั่ง

เพื่อเรียกใช้ a TestNG หากต้องการเรียกใช้ชุดคำสั่งจากบรรทัดคำสั่ง คุณต้องค้นหาเส้นทางพื้นที่ทำงานของโปรเจ็กต์และสร้างคำสั่ง classpath ที่ถูกต้องก่อน

ขั้นตอน 1) คลิกขวาที่ไอคอน Java โครงการและเลือก อสังหาริมทรัพย์ ในหน้าต่าง Properties ให้เลือก ทรัพยากร.

ดำเนินงาน TestNG ผ่านทางบรรทัดคำสั่ง

ขั้นตอน 2) คลิก ทรัพยากร คลิกลิงก์ในแถบนำทางด้านซ้ายเพื่อดูตำแหน่งจัดเก็บโปรเจ็กต์ที่แน่นอน

ดำเนินงาน TestNG ผ่านทางบรรทัดคำสั่ง

พื้นที่ทำงานของโครงการคือ C:\Users\User\Desktop\Guru99\โครงการทดสอบเปลี่ยนไดเร็กทอรีไปยังตำแหน่งนั้นในพรอมต์คำสั่ง

ขั้นตอน 3) พิมพ์คำสั่งทั่วไปต่อไปนี้:

java –cp "path_of_lib_folder\*; path_of_bin_folder; path_of_testng.jar" org.testng.TestNG testng.xml

สำหรับโครงการนี้ ให้ใช้:

Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*;
  C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG testng.xml

ขั้นตอน 4) ข่าวประชาสัมพันธ์ เข้าสู่ทั้ง DemoA และ DemoB จะทำงาน และผลลัพธ์จะแสดงในหน้าต่างคำสั่ง (command prompt)

ดำเนินงาน TestNG ผ่านทางบรรทัดคำสั่ง

วิธีการเรียกใช้เฉพาะกรณีทดสอบที่ล้มเหลวเท่านั้น

หากคุณต้องการเรียกใช้เฉพาะกรณีทดสอบที่ล้มเหลวเท่านั้น Eclipseขั้นแรก ให้รีเฟรชโปรเจ็กต์ก่อน

ขั้นตอน 1) คลิกขวาที่ไอคอน Java โครงการ (DemoA และ DemoB) และเลือก รีเฟรชหรือเลือกโครงการแล้วกด F5.

ขั้นตอน 2) ตอนนี้คุณจะเห็น เอาต์พุตทดสอบ โฟลเดอร์ ภายในนั้นมีไฟล์ชื่อ... testng-failed.xml.

ดำเนินการเฉพาะกรณีทดสอบที่ล้มเหลวเท่านั้น

ขั้นตอน 3) คลิกขวาที่ไฟล์นี้แล้วเลือก เรียกใช้ในฐานะ → TestNG ชุด.

หมายเหตุ: โฟลเดอร์ test-output จะปรากฏขึ้นก็ต่อเมื่อมีกรณีทดสอบอย่างน้อยหนึ่งกรณีที่ล้มเหลว หากกรณีทดสอบทั้งหมดผ่าน โฟลเดอร์นี้จะไม่มีไฟล์ testng-failed-xml การเรียกใช้ไฟล์นี้จะทำการทดสอบซ้ำเฉพาะกรณีทดสอบที่ล้มเหลวเท่านั้น

ดำเนินการเฉพาะกรณีทดสอบที่ล้มเหลวเท่านั้น

เรียกใช้ไฟล์ testng-failed.xml จากบรรทัดคำสั่ง

ขั้นตอน 1) เปิดหน้าต่าง Command Prompt แล้วไปยังพื้นที่ทำงานของโปรเจ็กต์

เรียกใช้ไฟล์ testng-failed.xml จากบรรทัดคำสั่ง

พื้นที่ทำงานของโครงการคือ C:\Users\User\Desktop\Guru99\โครงการทดสอบเปลี่ยนไดเร็กทอรีไปยังตำแหน่งนั้น

ขั้นตอน 2) พิมพ์คำสั่งทั่วไปต่อไปนี้:

java –cp "path_of_lib_folder\*; path_of_bin_folder; path_of_testng.jar" org.testng.TestNG test-output/testng-failed.xml

สำหรับโครงการนี้:

Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*;
C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG test-output/testng-failed.xml

ขั้นตอน 3) ข่าวประชาสัมพันธ์ เข้าสู่. TestNG ระบบจะดำเนินการเฉพาะคลาสที่ล้มเหลวและแสดงผลลัพธ์สำหรับคลาสเหล่านั้น

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

driver.findElement(By.name("a")).sendKeys("Bye");

เรียกใช้ไฟล์ testng-failed.xml จากบรรทัดคำสั่ง

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

TestNG ระบบจะบันทึกรายงานการทดสอบที่ล้มเหลวเป็นไฟล์ testng-failed.xml ไว้ในโฟลเดอร์ test-output ของโปรเจ็กต์ของคุณหลังจากทำการทดสอบใดๆ ที่มีข้อผิดพลาด

ใช่ คลิกขวาที่ไฟล์ testng-failed.xml ใน Eclipse และเลือก "เรียกใช้ในฐานะ" TestNG ใช้คำสั่ง Suite หรือใช้คำสั่ง java -cp ในพรอมต์คำสั่ง โดยชี้ไปยังไฟล์ test-output/testng-failed.xml

TestNG จะสร้างไฟล์ testng-failed.xml ก็ต่อเมื่อมีอย่างน้อยหนึ่งการทดสอบล้มเหลวเท่านั้น หากการทดสอบทั้งหมดผ่าน ไฟล์ XML ที่ล้มเหลวจะไม่ปรากฏในผลลัพธ์การทดสอบ

ใช่แล้ว เครื่องมือ AI สามารถวิเคราะห์สแต็กได้ tracใช้เนื้อหาจากไฟล์ es และ testng-failed.xml เพื่อระบุสาเหตุหลัก แนะนำวิธีแก้ไขโค้ด และแนะนำการปรับปรุงการตรวจสอบโดยอัตโนมัติ

AI สามารถสร้างการใช้งาน IRetryAnalyzer จำแนกความล้มเหลวที่เกิดขึ้นชั่วคราวกับความล้มเหลวที่แท้จริง และปรับจำนวนการลองใหม่โดยอัตโนมัติตามรูปแบบผลการทดสอบในอดีตได้

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