การทดสอบที่ขับเคลื่อนด้วยข้อมูลคืออะไร?

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

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

  • 📊 แนวคิดหลัก: สคริปต์ทดสอบเพียงชุดเดียวสามารถอ่านข้อมูลจากไฟล์ .xls, .csv, .xml หรือฐานข้อมูล และประมวลผลชุดข้อมูลแต่ละชุดโดยอัตโนมัติ
  • 🧱 การออกแบบกรอบงาน: ระบุกรณีทดสอบ เขียนขั้นตอนทั่วไปเพียงครั้งเดียว แยกข้อมูลออกมาต่างหาก จากนั้นวนลูปสคริปต์ไปตามแต่ละแถวข้อมูล
  • ⚙️ การเพิ่มประสิทธิภาพ: การทดสอบการเข้าสู่ระบบ 1000 รูปแบบนั้นต้องการเพียงสคริปต์ที่มีพารามิเตอร์เพียงสคริปต์เดียว แทนที่จะใช้สคริปต์แยกกัน 1000 สคริปต์
  • 🛠️ เครื่องมือ: แพลตฟอร์มต่างๆ เช่น Testsigma, Testinyและ Testpad จัดการชุดข้อมูลที่มีพารามิเตอร์และรายงานข้อผิดพลาดต่อแถวข้อมูลแต่ละแถว
  • ปฏิบัติที่ดีที่สุด: ใช้ข้อมูลที่สมจริง ครอบคลุมทั้งผลลัพธ์เชิงบวกและเชิงลบ และสร้างข้อสรุปแบบไดนามิกจากชุดข้อมูล
  • ⚠️ การแลกเปลี่ยน: คุณภาพของการทดสอบขึ้นอยู่กับทักษะการทำงานอัตโนมัติ และชุดข้อมูลขนาดใหญ่จะเพิ่มภาระงานด้านการตรวจสอบและการบำรุงรักษา

การทดสอบโดยใช้ข้อมูลเป็นตัวขับเคลื่อนคืออะไร

การทดสอบที่ขับเคลื่อนด้วยข้อมูล

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

กรอบการทำงานที่ขับเคลื่อนด้วยข้อมูล

กรอบการทำงานที่ขับเคลื่อนด้วยข้อมูล Data Driven Framework (DSC) คือเฟรมเวิร์กสำหรับการทดสอบอัตโนมัติ โดยค่าอินพุตจะถูกอ่านจากไฟล์ข้อมูลและจัดเก็บไว้ในตัวแปรในสคริปต์ทดสอบ เฟรมเวิร์กนี้ช่วยให้ผู้ทดสอบสามารถสร้างกรณีทดสอบทั้งเชิงบวกและเชิงลบได้ในการทดสอบเดียว ข้อมูลอินพุตในเฟรมเวิร์กแบบ Data Driven Framework สามารถจัดเก็บไว้ในแหล่งข้อมูลเดียวหรือหลายแหล่ง เช่น ไฟล์ .xls, .xml, .csv และฐานข้อมูล แผนภาพด้านล่างแสดงให้เห็นว่าค่าอินพุตไหลจากไฟล์ข้อมูลไปยังสคริปต์ทดสอบอย่างไร

กรอบการทำงานที่ขับเคลื่อนด้วยข้อมูล

เหตุใดจึงต้องใช้การทดสอบที่ขับเคลื่อนด้วยข้อมูล

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

ตัวอย่าง:

สมมติว่าเราต้องการทดสอบระบบล็อกอินที่มีช่องป้อนข้อมูลหลายช่องกับชุดข้อมูลที่แตกต่างกัน 1000 ชุด

เพื่อทดสอบเรื่องนี้ คุณสามารถใช้วิธีการต่างๆ ดังต่อไปนี้:

แนวทางที่ 1) สร้างสคริปต์ 1000 ชุด ชุดละหนึ่งชุดข้อมูล และเรียกใช้การทดสอบแต่ละครั้งแยกกันทีละชุด

แนวทางที่ 2) เปลี่ยนค่าในสคริปต์ทดสอบด้วยตนเองและรันหลายครั้ง

แนวทางที่ 3) นำเข้าข้อมูลจากไฟล์ Excel ดึงข้อมูลทดสอบจากแถวในไฟล์ Excel ทีละแถว แล้วเรียกใช้สคริปต์

ในบรรดาสามสถานการณ์ที่กำหนด สถานการณ์แรกและสถานการณ์ที่สองนั้นยุ่งยากและใช้เวลานาน ดังนั้นจึงควรเลือกใช้วิธีที่สาม

ดังนั้นแนวทางที่สามจึงไม่ใช่อะไรนอกจากกรอบงานที่ขับเคลื่อนด้วยข้อมูล

ประเภทของข้อมูลทดสอบในการทดสอบแบบใช้ข้อมูลเป็นตัวขับเคลื่อน

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

  • ข้อมูลเชิงบวก (ถูกต้อง): การป้อนข้อมูลที่ถูกต้อง เช่น ชื่อผู้ใช้และรหัสผ่านที่ถูกต้อง จะถูกนำมาใช้เพื่อยืนยันว่าแอปพลิเคชันยอมรับสิ่งที่ควรยอมรับ
  • ข้อมูลเชิงลบ (ไม่ถูกต้อง): ข้อมูลที่ป้อนผิดพลาดหรือผิดรูปแบบซึ่งควรถูกปฏิเสธ เช่น รหัสผ่านที่ไม่ถูกต้อง หรืออักขระพิเศษในช่องตัวเลข
  • ข้อมูลขอบเขต: ค่าที่อยู่ขอบเขตของช่วงที่อนุญาต เช่น ชื่อผู้ใช้ที่มี 1 ตัวอักษร หรือ 255 ตัวอักษร ซึ่งมักจะเผยให้เห็นข้อบกพร่องที่ซ่อนอยู่
  • ข้อมูลว่างเปล่าหรือค่าว่าง: ช่องว่างที่ใช้ตรวจสอบความถูกต้องของข้อมูลที่จำเป็นและข้อความแสดงข้อผิดพลาด
  • ข้อมูลปริมาณมาก: ใช้ข้อมูลจำนวนมากหรือข้อมูลที่สร้างขึ้นแบบสุ่มเพื่อตรวจสอบประสิทธิภาพและความเสถียรภายใต้ภาระงานที่สมจริง

เมื่อเตรียมข้อมูลที่ถูกต้องเรียบร้อยแล้ว ขั้นตอนต่อไปคือการสร้างโครงสร้างพื้นฐานนั้นเอง

วิธีสร้าง Data Driven Automation Framework

กรอบการทำงานอัตโนมัติที่ขับเคลื่อนด้วยข้อมูล

สมมติว่าคุณต้องการทดสอบฟังก์ชันการเข้าสู่ระบบของแอปพลิเคชัน แผนผังด้านบนแสดงวงจรการทำงานทั้งหมด: ระบุกรณีทดสอบ เขียนสคริปต์ทดสอบทั่วไป ย้ายข้อมูลไปยังไฟล์ภายนอก และวนลูปสคริปต์กับข้อมูลแต่ละแถว

ขั้นตอน 1) ระบุกรณีทดสอบ

  • ป้อนชื่อผู้ใช้และรหัสผ่านที่ถูกต้อง - เข้าสู่ระบบสำเร็จ
  • ป้อนชื่อผู้ใช้และรหัสผ่านไม่ถูกต้อง – การเข้าสู่ระบบล้มเหลว
  • กรอกชื่อผู้ใช้และรหัสผ่านไม่ถูกต้อง - การเข้าสู่ระบบล้มเหลว

ขั้นตอน 2) สร้างขั้นตอนการทดสอบโดยละเอียดสำหรับกรณีทดสอบ 3 กรณีข้างต้น

กรณีทดสอบ# Descriptไอออน ขั้นตอนการทดสอบ ข้อมูลการทดสอบ ผลลัพธ์ที่คาดหวัง
1 ตรวจสอบการเข้าสู่ระบบเพื่อดูข้อมูลรับรองที่ถูกต้อง
  1. เปิดแอปพลิเคชัน
  2. กรอกชื่อผู้ใช้ รหัสผ่าน
  3. คลิกตกลง
  4. ตรวจสอบผลลัพธ์
ชื่อผู้ใช้: รหัสผ่านที่ถูกต้อง: ถูกต้อง เข้าสู่ระบบสำเร็จ
2 ตรวจสอบการเข้าสู่ระบบเพื่อดูข้อมูลรับรองที่ไม่ถูกต้อง
  1. เปิดแอปพลิเคชัน
  2. กรอกชื่อผู้ใช้ รหัสผ่าน
  3. คลิกตกลง
  4. ตรวจสอบผลลัพธ์
ชื่อผู้ใช้: รหัสผ่านไม่ถูกต้อง: ถูกต้อง เข้าสู่ระบบล้มเหลว
3 ตรวจสอบการเข้าสู่ระบบเพื่อดูข้อมูลรับรองที่ไม่ถูกต้อง
  1. เปิดแอปพลิเคชัน
  2. กรอกชื่อผู้ใช้ รหัสผ่าน
  3. คลิกตกลง
  4. ตรวจสอบผลลัพธ์
ชื่อผู้ใช้: รหัสผ่านที่ถูกต้อง: ไม่ถูกต้อง เข้าสู่ระบบล้มเหลว

ขั้นตอน 3) สร้างสคริปต์ทดสอบ

หากสังเกตดู ขั้นตอนการทดสอบจะเหมือนกันในทั้ง 3 กรณีทดสอบ คุณจำเป็นต้องสร้างสคริปต์ทดสอบเพื่อดำเนินการตามขั้นตอนเหล่านี้:

// This is Pseudo Code

// Test Step 1: Launch Application
driver.get("URL of the Application");

// Test Step 2: Enter Username
txtbox_username.sendKeys("valid");

// Test Step 3: Enter Password
txtbox_password.sendKeys("invalid");

// Test Step 4: Check Results
If (Next Screen) print success else Fail

ขั้นตอน 4) สร้างไฟล์ Excel/CSV ด้วยข้อมูลทดสอบที่ป้อนเข้าไป ดังแสดงในตัวอย่างด้านล่าง

กรอบการทำงานอัตโนมัติที่ขับเคลื่อนด้วยข้อมูล

ขั้นตอน 5) แก้ไขสคริปต์ให้วนลูปตามข้อมูลทดสอบที่ป้อนเข้ามา คำสั่งป้อนข้อมูลควรมีการกำหนดพารามิเตอร์ด้วย

// This is Pseudo Code
// Loop 3 Times
for (i = 0; i & lt; = 3; i++) {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel(i, 0);
    int input_2 = ReadExcel(i, 1);

    // Test Step 1: Launch Application
    driver.get("URL of the Application");

    // Test Step 2: Enter Username
    txtbox_username.sendKeys(input_1);
    // Test Step 3: Enter Password

    txtbox_password.sendKeys(input_2);
    // Test Step 4: Check Results
    If(Next Screen) print success
    else Fail
}

ด้านบนเป็นเพียงกรณีทดสอบ 3 กรณี สคริปต์ทดสอบสามารถใช้เพื่อวนซ้ำกรณีทดสอบต่อไปนี้ได้โดยการผนวกค่าข้อมูลทดสอบเข้าไป Excel

  • ใส่ชื่อผู้ใช้และรหัสผ่านไม่ถูกต้อง – เข้าสู่ระบบล้มเหลว
  • กรอกชื่อผู้ใช้และรหัสผ่านให้ถูกต้อง - เข้าสู่ระบบล้มเหลว
  • กรอกชื่อผู้ใช้และรหัสผ่านว่าง – การเข้าสู่ระบบล้มเหลว

และอื่น ๆ

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

เมื่อโครงสร้างพื้นฐานของคุณพร้อมแล้ว เครื่องมือที่เหมาะสมจะช่วยให้การจัดการข้อมูล การดำเนินการ และการรายงานง่ายขึ้น

เครื่องมือทดสอบที่ขับเคลื่อนด้วยข้อมูลที่ดีที่สุด

1) ทดสอบซิกมา

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

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

ทดสอบซิกมา

สิ่งอำนวยความสะดวก:

  • การบูรณาการแหล่งข้อมูลภายนอก: คุณสมบัตินี้ช่วยให้สามารถเชื่อมต่อโดยตรงกับสเปรดชีต Excel ไฟล์ CSV และตารางฐานข้อมูลเพื่อการจัดการข้อมูลทดสอบแบบรวมศูนย์ ช่วยขจัดค่าคงที่และช่วยให้คุณสามารถดูแลรักษาข้อมูลทดสอบได้อย่างอิสระจากตรรกะการทดสอบ คุณสามารถอัปเดตชุดข้อมูลได้โดยไม่ต้องแก้ไขสคริปต์การทดสอบ ทำให้มีความยืดหยุ่นและบำรุงรักษาได้ง่าย ฉันใช้คุณสมบัตินี้ในการจัดการข้อมูลหลายร้อยรูปแบบได้อย่างมีประสิทธิภาพในขณะที่ยังคง...ping สถานการณ์ทดสอบสะอาดและนำกลับมาใช้ใหม่ได้
  • การวนซ้ำข้อมูลหลายแถวอัตโนมัติ: Testsigma จะทำการทดสอบโดยอัตโนมัติกับข้อมูลหลายแถวในการทดสอบครั้งเดียว ซึ่งช่วยเพิ่มความครอบคลุมได้อย่างมาก คุณสามารถตรวจสอบความถูกต้องของชุดข้อมูลอินพุต เงื่อนไขขอบเขต และกฎทางธุรกิจที่หลากหลายได้โดยไม่ต้องสร้างกรณีทดสอบซ้ำ คุณสมบัตินี้จัดการลำดับข้อมูลและตรรกะการวนซ้ำอย่างโปร่งใส ผมพบว่าคุณสมบัตินี้มีประสิทธิภาพเป็นพิเศษสำหรับการทดสอบการถดถอยอย่างครอบคลุมโดยมีค่าใช้จ่ายในการบำรุงรักษาสคริปต์น้อยที่สุด
  • การกำหนดค่าพารามิเตอร์ขั้นตอนการทดสอบแบบไดนามิก: คุณสมบัตินี้ช่วยให้คุณแทนที่ค่าคงที่ด้วยพารามิเตอร์แบบไดนามิกที่ดึงข้อมูลจากแหล่งภายนอกระหว่างการทำงาน คุณสามารถกำหนดค่าขั้นตอนการทดสอบเพื่อปรับให้เข้ากับอินพุต เงื่อนไข และผลลัพธ์ที่คาดหวังที่แตกต่างกันไปตามค่าของชุดข้อมูล คุณสมบัตินี้รองรับการแปลงข้อมูลที่ซับซ้อนและตรรกะแบบมีเงื่อนไข ผมใช้มันเพื่อสร้างสถานการณ์ทดสอบที่ยืดหยุ่นซึ่งรองรับความต้องการทางธุรกิจและขั้นตอนการทำงานของผู้ใช้ที่หลากหลาย
  • การรายงานผลการดำเนินการในระดับข้อมูล: แพลตฟอร์มนี้สร้างรายงานโดยละเอียดที่แยกผลการทดสอบตามชุดข้อมูลแต่ละชุด แสดงให้เห็นอย่างชัดเจนว่าข้อมูลป้อนเข้าใดผ่านหรือล้มเหลว คุณสามารถวิเคราะห์รูปแบบ ระบุช่วงข้อมูลที่มีปัญหา และ tracข้อผิดพลาดที่เกิดขึ้นกับแถวข้อมูลเฉพาะ ฟีเจอร์นี้มีแดชบอร์ดแบบภาพและข้อมูลวิเคราะห์ที่สามารถส่งออกได้สำหรับการสื่อสารกับผู้มีส่วนได้ส่วนเสีย ฉันขอแนะนำให้ใช้ข้อมูลเชิงลึกเหล่านี้เพื่อจัดลำดับความสำคัญในการปรับปรุงคุณภาพข้อมูลและปรับปรุงกลยุทธ์ข้อมูลทดสอบให้ดียิ่งขึ้น
  • การสนับสนุนข้อมูลแบบข้ามแพลตฟอร์ม: Testsigma ขยายขีดความสามารถในการทดสอบโดยใช้ข้อมูลเป็นหลักไปสู่การทดสอบเว็บ มือถือ และ API ภายในเวิร์กโฟลว์ที่เป็นหนึ่งเดียว คุณสามารถใช้ชุดข้อมูลเดียวกันเพื่อตรวจสอบความสอดคล้องในเลเยอร์และเทคโนโลยีต่างๆ ของแอปพลิเคชัน คุณสมบัตินี้ช่วยให้มั่นใจได้ถึงการตรวจสอบความถูกต้องแบบครบวงจรตั้งแต่ต้นจนจบด้วยการไหลของข้อมูลแบบพารามิเตอร์ ผมใช้มันเพื่อตรวจสอบว่าการประมวลผลข้อมูลแบ็กเอนด์แสดงผลในส่วนติดต่อผู้ใช้ด้านหน้าได้อย่างถูกต้องบนหลายแพลตฟอร์มพร้อมกัน

ข้อดี

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

จุดด้อย

  • ฉันต้องจัดการชุดข้อมูลอย่างระมัดระวัง เพราะข้อมูลปริมาณมากอาจทำให้เกิดความสับสนได้ง่าย

ราคา:

  • ราคา: ราคาที่กำหนดเองพร้อมความสามารถในการทดสอบที่ขับเคลื่อนด้วยข้อมูล ซึ่งรวมอยู่ในแผนการสมัครสมาชิกแบบครบวงจร
  • ทดลองฟรี: ทดลองใช้ฟรี 14 วัน

เยี่ยมชม Testsigma >>

ทดลองใช้ฟรี 14 วัน


2) Testiny

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

ขณะดำเนินโครงการที่ขับเคลื่อนด้วยข้อมูลด้วย Testinyฉันประทับใจฟีเจอร์การแก้ไขแบบกลุ่มและเทมเพลตที่ทำให้การทดสอบความหลากหลายในข้อมูลหลายร้อยแถวทำได้ง่าย แพลตฟอร์มนี้ทำงานร่วมกับ Jira, GitHub และ GitLab ได้ ทำให้ชุดข้อมูลที่ล้มเหลวเชื่อมโยงกลับไปยังปัญหา trackers โดยอัตโนมัติ

Testiny

สิ่งอำนวยความสะดวก:

  • การแก้ไขกรณีทดสอบจำนวนมาก: Testiny ช่วยให้คุณแก้ไข คัดลอก และกำหนดพารามิเตอร์ให้กับกรณีทดสอบจำนวนมากพร้อมกัน ซึ่งช่วยเร่งความเร็วในการสร้างตัวแปรที่ขับเคลื่อนด้วยข้อมูล คุณสามารถใช้การเปลี่ยนแปลงข้ามโฟลเดอร์ได้ในไม่กี่วินาทีโดยไม่ต้องแก้ไขแต่ละกรณีทีละรายการ ฉันใช้ฟังก์ชันนี้เมื่อขยายขอบเขตการครอบคลุมไปยังชุดข้อมูลใหม่โดยไม่ต้องเขียนสคริปต์ใหม่
  • ช่องข้อมูลที่กำหนดเองสำหรับการป้อนข้อมูล: ฟังก์ชันนี้ช่วยให้คุณกำหนดฟิลด์ที่กำหนดเองสำหรับแต่ละโปรเจกต์ได้ ดังนั้นคุณลักษณะของชุดข้อมูลจึงสามารถกำหนดได้ tracบันทึกไว้ควบคู่ไปกับการทดสอบแต่ละครั้ง คุณสามารถบันทึกค่าอินพุต ผลลัพธ์ที่คาดหวัง และเงื่อนไขต่างๆ ได้อย่างชัดเจนในที่เดียว ฉันใช้ช่องเหล่านี้เพื่อให้ตรวจสอบสถานการณ์ที่มีพารามิเตอร์ซับซ้อนได้ง่ายในภายหลัง
  • การทดสอบแบบเรียลไทม์ Tracking: แพลตฟอร์มนี้แสดงสถานะการดำเนินการแบบเรียลไทม์แก่สมาชิกในทีม ทำให้การทดสอบที่ขับเคลื่อนด้วยข้อมูลมีความโปร่งใส คุณสามารถมอบหมายเคส ตรวจสอบเปอร์เซ็นต์การผ่าน/ไม่ผ่าน และระบุชุดข้อมูลที่ติดขัดได้ทันทีที่เกิดขึ้น ฉันพบว่าสิ่งนี้มีประโยชน์สำหรับการรักษาความโปร่งใสping หัวหน้าฝ่ายควบคุมคุณภาพได้รับแจ้งข้อมูลโดยไม่ต้องมีการประชุมรายงานความคืบหน้าอย่างต่อเนื่อง
  • รายงานในรูปแบบ PDF และรายงานที่สามารถแชร์ได้: Testiny สร้างรายงาน PDF ที่สวยงามพร้อมแผนภูมิและสรุปผลการดำเนินงานที่คุณสามารถแชร์กับผู้มีส่วนได้ส่วนเสียที่ไม่ใช่ผู้เชี่ยวชาญด้านเทคนิคได้ คุณสามารถกรองตามชุดข้อมูล เหตุการณ์สำคัญ หรือเวอร์ชันได้ ฉันส่งรายงานเหล่านี้ออกไปเมื่อสิ้นสุดแต่ละสปรินต์เพื่อสื่อสารสถานะคุณภาพ
  • ปัญหาพื้นเมือง Tracการผสานรวม ker: มันเชื่อมต่อกับ Jira, GitHub, GitLab, Azure เดวิออปส์, เชิงเส้น, Asanaโดยใช้ Confluence, Trello และ monday.com เพื่อแปลงแถวข้อมูลที่ล้มเหลวให้เป็นตั๋วได้อย่างรวดเร็ว คุณสามารถรักษาความสอดคล้องระหว่างการดำเนินการทดสอบและเวิร์กโฟลว์ทางวิศวกรรมได้ ฉันสังเกตเห็นว่าสิ่งนี้ช่วยลดความขัดแย้งในการส่งต่อระหว่างทีม QA และทีมพัฒนาได้อย่างมาก

ข้อดี

  • ฉันสังเกตว่าการแก้ไขแบบกลุ่มช่วยให้การบำรุงรักษาการทดสอบที่ขับเคลื่อนด้วยข้อมูลมีน้ำหนักเบา แม้ว่าชุดข้อมูลจะมีขนาดใหญ่ขึ้นก็ตาม
  • การเชื่อมต่อ Testiny การแก้ไขบอร์ด Jira ของเราใช้เวลาเพียงไม่กี่นาที และแสดงการรวมข้อมูลที่ผิดพลาดเป็นตั๋วแจ้งปัญหาได้ทันที
  • เรียลไทม์ tracคิงช่วยให้ฉันเห็นภาพที่ชัดเจนว่าชุดข้อมูลใดบ้างที่ยังรอการประมวลผลอยู่ในแต่ละรอบ

จุดด้อย

  • ฉันคิดถึงการมีฟังก์ชันการทำงานอัตโนมัติของ API ขั้นสูงสำหรับชุดการทดสอบการถดถอยแบบพารามิเตอร์ขนาดใหญ่

ราคา:

  • ราคา: แพ็กเกจฟรีสำหรับผู้ใช้สูงสุด 3 คน; แพ็กเกจแบบชำระเงินจะเพิ่มจำนวนผู้ใช้และเพิ่มบริการสนับสนุนระดับพรีเมียม
  • ทดลองฟรี: ทดลองใช้ฟรี 21 วัน

เยี่ยมชมร้านค้า Testiny >>

ทดลองใช้ฟรี 21 วัน


3) Testpad

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

ระหว่างการประชุมที่ขับเคลื่อนด้วยข้อมูลของฉันกับ Testpadฉันใช้ส่วนต่อประสานผู้ใช้ที่เน้นการใช้แป้นพิมพ์เป็นหลักในการจำลองรูปแบบการป้อนข้อมูลหลายสิบแบบในครั้งเดียว การสนับสนุนผู้ทดสอบแบบแขกช่วยให้ฉันสามารถเชิญผู้เชี่ยวชาญในสาขาต่างๆ มาตรวจสอบความถูกต้องของชุดข้อมูลกรณีพิเศษได้โดยไม่ต้องเสียค่าใช้จ่ายเพิ่มเติมสำหรับที่นั่งทดสอบ

Testpad

สิ่งอำนวยความสะดวก:

  • รายการตรวจสอบการทดสอบแบบลำดับชั้น: Testpad โปรแกรมนี้จัดระเบียบการทดสอบแบบพารามิเตอร์ไว้ในรายการตรวจสอบแบบซ้อนกัน เพื่อให้คุณสามารถจัดกลุ่มข้อมูลที่มีความแตกต่างกันภายใต้กรณีหลักเดียวกันได้ คุณสามารถขยายและยุบสาขาเพื่อเน้นที่ชุดข้อมูลเฉพาะได้ ฉันใช้โปรแกรมนี้เพื่อทำให้เมทริกซ์ข้อมูลที่ซับซ้อนดูเรียบร้อยขึ้น
  • การแก้ไขโดยใช้แป้นพิมพ์: โปรแกรมนี้ช่วยให้คุณสร้าง จัดย่อหน้า และจัดลำดับรายการทดสอบใหม่ได้ด้วยปุ่มลัดบนแป้นพิมพ์ ทำให้การสร้างแผนงานขนาดใหญ่ที่ขับเคลื่อนด้วยข้อมูลทำได้อย่างรวดเร็ว คุณสามารถทำงานได้อย่างต่อเนื่องโดยไม่ต้องเอื้อมมือไปหยิบเมาส์ ผมพบว่าวิธีนี้ช่วยลดเวลาในการบันทึกแถวข้อมูลชุดใหม่ได้อย่างมาก
  • สิทธิ์การเข้าถึงสำหรับผู้ทดสอบภายนอก: Testpad รองรับผู้ทดสอบภายนอกได้ไม่จำกัดจำนวนโดยไม่มีค่าใช้จ่ายต่อที่นั่ง คุณจึงสามารถเชิญผู้เชี่ยวชาญเฉพาะด้านมาทดสอบข้อมูลเฉพาะได้ คุณสามารถเชิญผู้มีส่วนได้ส่วนเสียมาตรวจสอบกรณีพิเศษได้โดยไม่ต้องเสียค่าใช้จ่ายด้านลิขสิทธิ์ ฉันใช้ฟังก์ชันนี้ในระหว่างการทดสอบการยอมรับของผู้ใช้ด้วยสถานการณ์จำลองที่มีพารามิเตอร์
  • รายงานที่แชร์ได้ทันที: แพลตฟอร์มนี้สร้างรายงานขนาดเล็กที่คุณสามารถแชร์ผ่านลิงก์ได้ ทำให้เห็นความคืบหน้าโดยไม่ต้องเปิดเครื่องมือ คุณสามารถกรองตามผู้ทดสอบ สถานะ หรือสาขาการทดสอบได้ ฉันส่งรายงานเหล่านี้ให้ผู้จัดการผลิตภัณฑ์เมื่อสิ้นสุดการทดสอบที่ขับเคลื่อนด้วยข้อมูลแต่ละครั้ง
  • »Ñ­ËÒ Tracการเชื่อมโยง ker: มันเชื่อมโยงการทดสอบที่ล้มเหลวกับตั๋วใน Jira หรือ GitHub ผ่านลิงก์ง่ายๆ เพื่อให้ข้อผิดพลาดของข้อมูลถูกส่งไปยังทีมวิศวกรรมได้อย่างรวดเร็ว คุณสามารถแนบบริบทได้โดยตรงจากรายการตรวจสอบที่ล้มเหลว ช่วยให้ผู้ทดสอบมุ่งเน้นไปที่การดำเนินการ ในขณะที่ปล่อยให้เครื่องมือจัดการการส่งต่อ

ข้อดี

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

จุดด้อย

  • ฉันหวังว่าจะมีกลไกการทำงานอัตโนมัติในตัวสำหรับการวิเคราะห์ถดถอยข้อมูลขนาดใหญ่

ราคา:

  • ราคา: แพ็คเกจเริ่มต้นที่ 59 ดอลลาร์ต่อเดือน พร้อมแพ็คเกจสำหรับองค์กรขนาดใหญ่ที่สามารถปรับแต่งได้ตามต้องการ
  • ทดลองฟรี: ทดลองใช้ฟรี 30 วัน

เยี่ยมชมร้านค้า Testpad >>

ทดลองใช้ฟรี 30 วัน

แนวปฏิบัติที่ดีที่สุดของการทดสอบที่ขับเคลื่อนด้วยข้อมูล

ต่อไปนี้คือแนวทางปฏิบัติที่ดีที่สุดสำหรับการทดสอบแบบใช้ข้อมูลเป็นหลัก:

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

ข้อดีของการทดสอบที่ขับเคลื่อนด้วยข้อมูล

การทดสอบโดยใช้ข้อมูลเป็นหลักมีข้อดีหลายประการ บางส่วนได้แก่:

  1. ช่วยให้สามารถทดสอบแอปพลิเคชันด้วยชุดข้อมูลหลายชุดได้ในระหว่าง การทดสอบการถดถอย
  2. ข้อมูลการทดสอบและข้อมูลการตรวจสอบสามารถจัดระเบียบได้ในไฟล์เดียว และแยกจากตรรกะของกรณีทดสอบ
  3. เครื่องมือนี้ช่วยให้สามารถรวบรวมสคริปต์ทดสอบไว้ในที่เก็บเดียว ทำให้การทดสอบเข้าใจง่าย บำรุงรักษาง่าย และจัดการได้ง่าย
  4. การดำเนินการและฟังก์ชันสามารถนำมาใช้ซ้ำได้ในการทดสอบต่างๆ
  5. เครื่องมือบางอย่างสร้างข้อมูลทดสอบโดยอัตโนมัติ ซึ่งมีประโยชน์เมื่อต้องการข้อมูลทดสอบแบบสุ่มจำนวนมาก ช่วยประหยัดเวลาได้
  6. การทดสอบโดยใช้ข้อมูลเป็นหลักสามารถดำเนินการได้ในทุกขั้นตอนของการพัฒนา โดยทั่วไปแล้วกรณีทดสอบที่ใช้ข้อมูลเป็นหลักจะถูกรวมเข้าไว้ในกระบวนการเดียว อย่างไรก็ตาม สามารถใช้ในกรณีทดสอบหลายกรณีได้เช่นกัน
  7. ช่วยให้นักพัฒนาและผู้ทดสอบสามารถแยกตรรกะของกรณีการทดสอบ/สคริปต์ออกจากข้อมูลการทดสอบได้อย่างชัดเจน
  8. สามารถเรียกใช้กรณีทดสอบเดียวกันได้หลายครั้ง ซึ่งช่วยลดจำนวนกรณีทดสอบและสคริปต์ลงได้
  9. การเปลี่ยนแปลงใดๆ ในสคริปต์ทดสอบจะไม่ส่งผลกระทบต่อข้อมูลทดสอบ

ข้อเสียของการทดสอบที่ขับเคลื่อนด้วยข้อมูล

ข้อเสียบางประการของวิธีการทดสอบอัตโนมัติที่ขับเคลื่อนด้วยข้อมูลคือ:

  1. คุณภาพของการทดสอบขึ้นอยู่กับทักษะการทำงานอัตโนมัติของทีมผู้ดำเนินการ
  2. การตรวจสอบความถูกต้องของข้อมูลเป็นงานที่ใช้เวลานานเมื่อต้องทดสอบข้อมูลจำนวนมาก
  3. การบำรุงรักษาเป็นปัญหาใหญ่ เนื่องจากต้องใช้การเขียนโค้ดจำนวนมากสำหรับการทดสอบแบบขับเคลื่อนด้วยข้อมูล
  4. จำเป็นต้องมีทักษะทางเทคนิคระดับสูง ผู้ทดสอบอาจต้องเรียนรู้ภาษาสคริปต์ใหม่ทั้งหมด
  5. จะมีเอกสารเพิ่มเติมอีกจำนวนมาก โดยส่วนใหญ่เกี่ยวข้องกับการจัดการสคริปต์ โครงสร้างพื้นฐานการทดสอบ และผลการทดสอบ
  6. จำเป็นต้องใช้โปรแกรมแก้ไขข้อความเช่น Notepad เพื่อสร้างและบำรุงรักษาไฟล์ข้อมูล

การทดสอบที่ขับเคลื่อนด้วยข้อมูล เทียบกับ การทดสอบที่ขับเคลื่อนด้วยคีย์เวิร์ด

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

พารามิเตอร์ การทดสอบที่ขับเคลื่อนด้วยข้อมูล การทดสอบที่ขับเคลื่อนด้วยคำหลัก
สิ่งที่ถูกทำให้เป็นภายนอก ข้อมูลทดสอบ (ข้อมูลป้อนเข้าและผลลัพธ์ที่คาดหวัง) ทดสอบการกระทำ (คำหลัก เช่น เข้าสู่ระบบ คลิก ยืนยัน)
แหล่งข้อมูล ไฟล์ Excel, CSV, XML หรือตารางฐานข้อมูล ตารางคำหลัก พร้อมตารางข้อมูลเพิ่มเติม (ถ้ามี)
ทักษะที่จำเป็น ความรู้ด้านการเขียนสคริปต์ระดับปานกลาง ต้องใช้ความพยายามในการออกแบบเริ่มต้นมากขึ้น แต่ใช้โค้ดน้อยลงในการสร้างการทดสอบใหม่
เหมาะที่สุดสำหรับ การทำซ้ำสถานการณ์หนึ่งด้วยชุดข้อมูลป้อนเข้าหลายแบบ สร้างสถานการณ์ต่างๆ มากมายจากบล็อกการกระทำที่นำกลับมาใช้ซ้ำได้
ซ่อมบำรุง อัปเดตไฟล์ข้อมูลโดยไม่ต้องแก้ไขสคริปต์ อัปเดตคลังคำหลักเมื่อพฤติกรรมของแอปพลิเคชันเปลี่ยนแปลง

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

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

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

Selenium สีสดสวย TestNG or JUnit, UFTและแพลตฟอร์มคลาวด์ เช่น ทดสอบซิกมา รองรับภาษาใดก็ได้ที่สามารถอ่านไฟล์ภายนอกได้ รวมถึง Java, Pythonและ C# สามารถนำเฟรมเวิร์กที่ขับเคลื่อนด้วยข้อมูลมาใช้งานได้

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

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

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

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