SonarQube ถือว่าเป็นเครื่องมือยอดยิยมสำหรับผู้ที่ต้องการตรวจสอบคุณภาพของ Source Code ในแต่ละบทความจะค่อยๆพาทุกกท่านไปทำความรู้จักกับ SonarQube ให้มากขึ้นเรื่อยๆ
SonarQube เครื่องมือที่จะช่วยให้ Code ของคุณมีคุณภาพที่ดีขึ้น
SonarQube จะแบ่ง rules ที่ใช้ในการ scan ออกเป็น 4 กลุ่มใหญ่ๆ คือ
- Bug คือ rules ที่จะตรวจสอบ source code ที่น่าจะเขียนผิด เช่น code ที่เราเขียน if-else แต่ไม่ว่าจะยังไงก็จะไม่เข้า else
- Code smell คือ rules ที่จะตรวจสอบ code ที่อ่านยากหรือแก้ไขได้ยาก เช่นใน c# จะไม่ให้ใช้ multidimention array เป็น parameter
- Vulnerability คือ rules ที่จะตรวจสอบ code ที่เขียนแล้วน่าจะมีช่องโหว่ เช่น เอาตัวแปรไปต่อกับ sql string โดยใช้เครื่องหมาย “+” แทนที่จะใช้ parameterize query
- Security hotspot คือ rules ที่อาจเกิดเป็นช่องโหว่ได้ คล้่ายกับ vulnerability แต่ sonarqube ยังไม่แน่ใจจึงต้องการให้เราเข้าไป review
ลองดูตัวอย่างเพิ่มเติมได้ที่ sonarqube คืออะไร