Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 2036

วิเคราะห์ code ภาษา Swift ด้วย SonarQube

$
0
0

sonar-swift-00

sonar-swift-00 ว่าง ๆ ช่วงฝนตกมานั่งวิเคราะห์ code ของภาษา Swift ด้วย SonarQube กันหน่อย ถ้าไปดูใน SonarQube จะพบว่ามี plugin ให้ใช้แล้ว แต่ว่ามันเป็น commercial หรือเสียเงินนั่นเอง ดังนั้นจึงไปลองหาของฟรีและไปพบกับ Sonar Swift จึงนำมาทดลองใช้กันหน่อย

เริ่มต้นด้วยการดูหน่อยสิว่า Sonar Swift มันมีอะไรให้ใช้บ้าง ?

  • การทดสอบทั้ง Unit test และ UI Test ผ่าน xcodebuild
  • และทำรายงานสรุปผลการทดสอบด้วย xcpretty
  • เรื่องของ code coverage ใช้งาน Slather
  • ตรวจสอบ issue ต่าง ๆ ด้วย SwiftLint ซึ่งสามารถดูเพิ่มเติมได้จาก blog การใช้งาน SwiftLint
  • ตรวจสอบเรื่อง complexity หรือความซับซ้อนของ code ด้วย Lizard
  • อีกทั้งยังสามารถตรวจสอบเรื่อง code ที่ซ้ำซ้อน และข้อมูลพื้นฐานของ code ได้

การติดตั้ง plugin

ทำการ download ไฟล์ backelite-sonar-swift-plugin-0.2.4.jar จากนั้นนำไปวางใน $SONARQUBE_HOME/extensions/plugins ของ SonarQube จากนั้นทำการ start หรือ restart service ของ SonarQube แล้วเข้าไปตรวจสอบว่า plugin ติดตั้งเรียบร้อยหรือไม่ ในเมนู System -> Update Center ถ้าติดตั้งสำเร็จจะแสดงดังรูป sonar-swift-01

มาถึงการใช้งานกันบ้าง

ใน Xcode project ต้องทำการสร้างไฟล์ sonar-project.properties ขึ้นมา สำหรับกำหนด configuration ต่าง ๆ ของ project เพื่อส่งผลการวิเคราะห์ไปยัง SonarQube แสดงดังนี้ [gist id="ee53ffe28b7ff7ae173eee0e552f6a37" file="sonar-project.properties"] สามารถดู code ตัวอย่างพร้อม configuration ได้ที่ Github::Demo Sonar Swift

จากนั้นเริ่มต้นวิเคราะห์ code ด้วยคำสั่ง

[code] $sh run-sonar-swift.sh [/code] ผลการทำงานให้เปิด SonarQube จะแสดงผลดังนี้ sonar-swift-02 ยังไม่พอนะ ยังสามารถทำงานร่วมกับ Fastlane ได้อีกด้วย เพียงเท่านี้เราก็สามารถวิเคราะห์ code ที่พัฒนาด้วยภาษา Swift แบบง่าย ๆ ได้แล้วครับ ทำให้เรารู้ได้เลยว่า ควรแก้ไข code อะไร และ ตรงไหนได้บ้าง น่าจะทำให้การเขียน code สนุกยิ่งขึ้นนะ

Viewing all articles
Browse latest Browse all 2036

Trending Articles