r1 - 02 Oct 2008 - 14:14:11 - PanitaMeananeatraYou are here: SETEC Wiki >  Knowledge Web  > SoftwareEngineeringCategory > SoftwareTesting > SoftwareTestingTools > Tool_Panopticode

Panopticode Tool

Overview

   Code Coverage Tool ที่ชื่อ Panopticode ตัวนี้ หลักการก็จะคล้ายๆกับ code coverage tools ตัวอื่นๆคือ integration กับ JUnit เพื่อทำการทดสอบดูการ Coverage ของ Test case ผ่านทาง Ant Script แต่สิ่งที่แตกต่างออกมาคือ การที่ Panopticode นำ Lib อื่นๆมาร่วมในการวิเคราะห์ code ด้วย เช่น Check Style,Complexity เป็นต้น และอีกทั้งยัง ออก Report ให้อยู่ในรูปแบบของ Tree Map เพื่อให้ดูภาพรวมของระบบได้ง่ายขึ้น

Feature

  • สามารถ executed จาก ant srcipt
  • Instruments Java Byte Code หลังจาก Compiles
  • สามารถ Report ออกมาเป็น ไฟล์ HTML ,XML และ TreeMap??
  • สามารถ นำ Library อื่นๆมาร่วม(Plug-in)ในการทำ Code Coverage ได้ เช่น Emma , Cobertura * คำนวน Line , Branches Coverage ได้
  • ตั้งแต่ class , package และ ทั้งโปรแกรม ขึ้นอยุ่กับการเลือก Library
  • คำนวน McCabe???? cyclomatic code complexity ตั้งแต่ class , package และ ทั้งโปรแกรม โดยใช้ Complexian Library
  • เช็คการเขียน source code ตามมาตรฐานของ Sun Microsystems โดยใช้ CheckStyle?? Library
  • highlight code แต่ละ line ได้ ใน Report

Sample Report

  • coverage-treemap.png:
    coverage-treemap.png

Installation Panopticode

   1. โหลด Library ที่เว็บ http://downloads.sourceforge.net/panopticode/panopticode-0.1.zip และ source code ที่จะทำมา ทดสอบที่เว็บ http://downloads

   2.นำ source code และ library ที่ได้โหลดมา หลังจาก คลาย zip จะได้ folder ชื่อ panopticode นำมาวางไว้ในpath เดียวกัน

  • Untitled-1.gif:
    Untitled-1.gif

อธิบาย

  • Folder ชื่อ panopticode เป็น Folder ของ Library ต่า่งๆ สำหรับทำการ Test Code Coverage
  • Folder ชื่อ unittest เป็น Folder Unit Test สำหรับ Test Class ต่า่งๆ ที่อยู่ใน Folder prod
  • Folder ชื่อ prod เป็น Folder Source Code สำหรับนำมา Test

Quick Start

   1. นำ ไฟล์ build-example.xml ที่อยู่ใน Folder panopticode มาไว้ที่ Folder หลัก(ในที่นี้ชื่อ For Test) เป็น Root Folder แล้วเปลี่ยนชื่อเป็น build.xml

Untitled-2.gif

   2. แก้ไฟล์ panopticode-imports.xml ใน Folder panopticode ดังนี้
บรรทัดที่ 53 ตัด code ออกดังนี้

      
และบรรทัดที่ 109 ตัด code ออกดังนี้

      <panopticode-scm-log projectDir="@{projectDir}"
      outputDir="@{outputDir}" />

   3. แก้ไฟล์ emma-imports.xml ใน panopticode\supplements\emma แก้บรรทัดที่ 58 เป็นดังนี

      

   4. ทำการ Build Ant ที่ Folder หลัก จะได้ผลลัพธ์ดังรูป

Untitled-3.gif

   5. จะได้ Folder ชื่อ Target เพิ่มขึ้นมา จะมี Report ที่ Folder reports\svg ใน Target จะเป็น File .svg เปิดได้ใน IE และ FireFox?

Untitled-4.gif

Reference

  1. Panopticode Code Coverage Tools , http://www.panopticode.org/


toggleopenShow attachmentstogglecloseHide attachments
Topic attachments
I Attachment Action Size Date Who Comment
pngpng coverage-treemap.png manage 29.1 K 02 Oct 2008 - 14:07 PanitaMeananeatra  
gifgif Untitled-1.gif manage 2.0 K 02 Oct 2008 - 14:07 PanitaMeananeatra  
gifgif Untitled-2.gif manage 2.8 K 02 Oct 2008 - 14:11 PanitaMeananeatra  
gifgif Untitled-3.gif manage 26.2 K 02 Oct 2008 - 14:12 PanitaMeananeatra  
gifgif Untitled-4.gif manage 35.8 K 02 Oct 2008 - 14:13 PanitaMeananeatra  
Edit | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r1 | More topic actions
 
Powered by SETEC Wiki
Copyright ©2012 by National Electronics and Computer Technology Center, NECTEC.
Ideas, requests, problems regarding SETEC Wiki? Send feedback