การทดสอบแบบ Agile - เครื่องมือ

ในโครงการ Agile ผู้ทดสอบมีหน้าที่รับผิดชอบงานประจำวันดังต่อไปนี้ -

  • สนับสนุนนักพัฒนาในการเขียนโค้ดพร้อมคำชี้แจงเกี่ยวกับลักษณะการทำงานที่คาดหวังของระบบ

  • ช่วยนักพัฒนาในการสร้างการทดสอบหน่วยที่มีประสิทธิภาพและประสิทธิผล

  • พัฒนาสคริปต์อัตโนมัติ

  • รวมเครื่องมือ / สคริปต์การทดสอบอัตโนมัติเข้ากับการรวมอย่างต่อเนื่องสำหรับการทดสอบการถดถอย

เพื่อให้งานเหล่านี้ใช้งานได้อย่างมีประสิทธิภาพและรวดเร็วระบบ Continuous Integration (CI) ที่รองรับ CI of Code และส่วนประกอบการทดสอบจะถูกใช้ในโครงการ Agile ส่วนใหญ่

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

Note - โซลูชันการบันทึกและเล่นการทดสอบล่าสุดเฮฟวี่เวทและการทดสอบอัตโนมัติไม่คล่องตัวเท่ากับ -

  • เวิร์กโฟลว์การทดสอบล่าสุดที่สนับสนุนโดยเครื่องมือดังกล่าวใช้ไม่ได้กับทีม Agile

  • สคริปต์ที่ไม่สามารถเข้าถึงได้ที่สร้างขึ้นด้วยเครื่องมือดังกล่าวกลายเป็นอุปสรรคต่อการเปลี่ยนแปลง

  • เครื่องมือพิเศษดังกล่าวสร้างความจำเป็นสำหรับผู้เชี่ยวชาญด้านการทดสอบอัตโนมัติดังนั้นจึงต้องส่งเสริมไซโล

เครื่องมือที่ใช้กันอย่างแพร่หลาย ได้แก่ -

ส. เครื่องมือและวัตถุประสงค์
1

Hudson

กรอบ CI

2

Selenium

การทดสอบการทำงาน - รวมเข้ากับฮัดสัน

3

CruiseControl

กรอบ CI

4

Junit

การทดสอบหน่วย Java

5

Nunit

.Net แบบทดสอบหน่วย

6

Cobertura / JavaCodeCoverage / JFeature / JCover /

ความครอบคลุมของการทดสอบ Java

7

Jester

Java - การทดสอบการกลายพันธุ์ / การระบุข้อผิดพลาดอัตโนมัติ

8

Gretel

เครื่องมือตรวจสอบ Java Test Coverage

9

TestCocoon

C / C ++ หรือ C # - ลดปริมาณการทดสอบโดยค้นหาการทดสอบซ้ำซ้อนและค้นหา Dead Code

10

JAZZ

Java - Branch, Node และ Defuse Coverage และใช้ GUI, Test Planners, Dynamic Instrumentation และ Test Analyzer

11

Ant

Java - การสร้างระบบอัตโนมัติ

12

Nant

.Net - การสร้างระบบอัตโนมัติ

13

Bonfire

โปรแกรมเสริมการทดสอบ Agile สำหรับ JIRA

เครื่องมือทดสอบอัตโนมัติแบบ Agile

การสนับสนุนเครื่องมือทดสอบ Agile อัตโนมัติที่มีประสิทธิภาพ -

  • การทดสอบอัตโนมัติในช่วงต้นโดยใช้วิธีทดสอบก่อน

  • การเขียนโค้ดทดสอบอัตโนมัติโดยใช้ภาษาจริงภาษาเฉพาะโดเมน

  • มุ่งเน้นไปที่พฤติกรรมที่คาดหวังของระบบ

  • การแยกสาระสำคัญของการทดสอบออกจากรายละเอียดการใช้งานจึงทำให้เทคโนโลยีเป็นอิสระ

  • ส่งเสริมการทำงานร่วมกัน

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

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

ดังนั้นการทดสอบหน่วยอัตโนมัติและการทดสอบการยอมรับอัตโนมัติจึงฟรีและจำเป็นต้องใช้ทั้งสองอย่างในการพัฒนาแบบ Agile

เครื่องมือและกรอบการทำงานแบบ Agile ที่รองรับการทดสอบการยอมรับอัตโนมัติ ได้แก่ -

  • Fit
  • Fitnesse
  • Concordion
  • Ruby
  • Cucumber

พอดี

Ward Cunningham ได้พัฒนาเครื่องมือ Fit ที่สามารถใช้สำหรับ Acceptance Test Automation Fit ช่วยให้ -

  • ลูกค้าหรือเจ้าของผลิตภัณฑ์เพื่อยกตัวอย่างพฤติกรรมผลิตภัณฑ์โดยใช้ Microsoft Word และ Microsoft Excel

  • โปรแกรมเมอร์สามารถเปลี่ยนตัวอย่างเหล่านั้นเป็นการทดสอบอัตโนมัติได้อย่างง่ายดาย

Fit 1.1 รองรับทั้ง Java และ. NET

FitNesse

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

ใน FitNesse การทดสอบการยอมรับอัตโนมัติมีดังต่อไปนี้ -

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

  • ใช้ FitNesse เพื่อวางตารางทดสอบบนหน้าที่คุณแก้ไขได้

    • หรือใส่ตารางทดสอบใน Microsoft Excel คัดลอกไปที่คลิปบอร์ดแล้วใช้ไฟล์ Spreadsheet to FitNesse คำสั่งเพื่อให้ FitNesse จัดรูปแบบตารางของคุณอย่างถูกต้อง

  • ทำการทดสอบ

  • คุณได้รับผลการทดสอบโดยการเข้ารหัสสีของเซลล์ในตารางทดสอบ

    • เซลล์สีเขียวแสดงว่าได้รับค่าที่คาดหวัง

    • เซลล์สีแดงแสดงว่าได้รับค่าที่แตกต่างจากที่คุณคาดไว้

    • เซลล์สีเหลืองแสดงว่ามีการโยนข้อยกเว้น

แตงกวา

แตงกวาเป็นเครื่องมือตามกรอบการพัฒนาพฤติกรรมขับเคลื่อน (BDD) คุณสมบัติที่สำคัญคือ -

  • ใช้ในการเขียนการทดสอบการยอมรับสำหรับเว็บแอปพลิเคชัน

  • อนุญาตให้ทำการตรวจสอบการทำงานโดยอัตโนมัติในรูปแบบที่อ่านง่ายและเข้าใจได้เช่นภาษาอังกฤษล้วน

  • ถูกนำไปใช้ใน Ruby แล้วขยายไปยัง Java framework ทั้งสองสนับสนุน Junit

  • รองรับภาษาอื่น ๆ เช่น Perl, PHP, Python, .Net เป็นต้น

  • สามารถใช้ร่วมกับ Selenium, Watir, Capybara ฯลฯ