Sonarqube Cucumber Gherkin Analyzer
คำเตือน
ฉันไม่ต้องการดูแลปลั๊กอินนี้ต่อไป อย่าลังเลที่จะ ping ฉันถ้าคุณต้องการที่จะครอบครอง
คำอธิบาย
ปลั๊กอิน Sonarqube นี้วิเคราะห์ไฟล์คุณสมบัติแตงกวา Gherkin และ::
- คำนวณตัวชี้วัด: บรรทัดของรหัสจำนวนสถานการณ์ ฯลฯ
- ตรวจสอบแนวทางต่าง ๆ เพื่อค้นหาข้อบกพร่องและรหัสที่มีศักยภาพผ่านการตรวจสอบมากกว่า 40 รายการ
- ให้ความสามารถในการเขียนเช็คของคุณเอง
การใช้งาน
- ดาวน์โหลดและติดตั้ง sonarqube
- ติดตั้งปลั๊กอินแตงกวา Gherkin โดยการดาวน์โหลดโดยตรง เวอร์ชันล่าสุดเข้ากันได้กับ Sonarqube 6.7+
- ติดตั้งเครื่องสแกนที่คุณชื่นชอบ (Sonarqube Scanner, Maven, Ant, ฯลฯ )
- วิเคราะห์รหัสของคุณ
หนอง
เป็นไปได้ว่าไฟล์คุณสมบัติของคุณไม่ได้อยู่ในไดเรกทอรีซอร์สโค้ด แต่อยู่ในไดเรกทอรีทดสอบ โดยค่าเริ่มต้น Sonarqube ไม่ได้วิเคราะห์ไดเรกทอรีทดสอบเหล่านั้น ดังนั้นคุณต้องบอก Sonarqube อย่างชัดเจนให้วิเคราะห์ไดเรกทอรีทดสอบที่มีไฟล์คุณสมบัติของคุณ
สมมติว่าโครงสร้างของโครงการของคุณคือ:
pom.xml
src
|-- main
|-- java
|-- resources
|-- test
|-- java
|-- resources
|-- features
|-- my-feature.feature
|-- my-other-feature.feature
ในไฟล์ POM ของคุณคุณจะต้องเพิ่ม:
<properties>
<sonar.sources>pom.xml,src/main/java,src/main/resources,src/test/resources/features</sonar.sources>
</properties>
การตรวจสอบที่กำหนดเอง
คุณกำลังคิดถึงกฎที่มีค่าใหม่หรือไม่? เวอร์ชัน 1.0 หรือมากกว่ามี API เพื่อเขียนเช็คที่กำหนดเองของคุณเอง ปลั๊กอินตัวอย่างพร้อมคำอธิบายโดยละเอียดมีอยู่ที่นี่ หากกฎที่กำหนดเองของคุณอาจเป็นประโยชน์ต่อชุมชนอย่าลังเลที่จะสร้างคำขอดึงเพื่อให้กฎมีอยู่ในเครื่องวิเคราะห์แตงกวา Gherkin
คุณกำลังคิดถึงกฎใหม่ที่อาจเป็นประโยชน์ต่อชุมชน แต่ไม่มีเวลาหรือทักษะในการเขียนพวกเขา? อย่าลังเลที่จะสร้างปัญหาสำหรับกฎของคุณที่จะพิจารณา
ตัวชี้วัด
งบ
จำนวนขั้นตอน
ฟังก์ชั่น
จำนวนสถานการณ์และโครงร่างสถานการณ์
ชั้นเรียน
จำนวนคุณสมบัติ
กฎที่มีอยู่
- ควรจัดการแท็ก "fixme"
- ควรจัดการแท็ก "todo"
- ความคิดเห็นทั้งหมดควรจัดรูปแบบอย่างสม่ำเสมอ
- และ แต่ควรใช้คำนำหน้าแทนคำนำหน้าซ้ำ/เมื่อ/จากนั้น
- ไม่ควรใช้เครื่องหมายคำสั่งซื้อไบต์ (BOM) สำหรับไฟล์ UTF-8
- ควรเพิ่มขั้นตอนทั่วไปในพื้นหลัง
- ควรลบขั้นตอนที่ซ้ำกัน
- อักขระปลายบรรทัดควรสอดคล้องกัน
- ตัวอย่างตารางข้อมูลควรมีข้อมูลอย่างน้อยสองแถวข้อมูล
- คุณสมบัติควรเขียนเป็นภาษาเดียวกัน
- คุณสมบัติควรมีคำอธิบาย
- คุณสมบัติควรมีชื่อ
- คุณสมบัติควรมีชื่อที่ไม่ซ้ำกัน
- คุณสมบัติไม่ควรมีสถานการณ์มากเกินไป
- ควรลบคุณสมบัติที่ไม่ได้กำหนดสถานการณ์ใด ๆ
- ชื่อไฟล์ควรปฏิบัติตามอนุสัญญาการตั้งชื่อ
- ไฟล์ควรมีบรรทัดใหม่ที่ว่างเปล่าในตอนท้าย
- ควรลบไฟล์ที่ไม่ได้กำหนดคุณสมบัติใด ๆ
- ขั้นตอนที่กำหนดควรเป็นไปตามนิพจน์ทั่วไป
- กำหนด/เมื่อ/จากนั้นควรกำหนดขั้นตอนในลำดับที่ถูกต้อง
- เส้นไม่ควรจบลงด้วยช่องว่าง
- ควรเพิ่มคอลัมน์ตารางข้อมูล
- ควรเลื่อนขั้นตอนที่ไม่ได้รับจากพื้นหลัง
- ควรใช้แท็กจาก whitelist เท่านั้น
- นิพจน์ทั่วไปเกี่ยวกับความคิดเห็น
- สถานการณ์ควรกำหนดอย่างน้อยหนึ่งรายการที่กำหนด/เมื่อ/จากนั้นประเภทขั้นตอน
- สถานการณ์ควรมีชื่อ
- สถานการณ์ควรมีชื่อที่ไม่ซ้ำกัน
- สถานการณ์ไม่ควรมีขั้นตอนมากเกินไป
- สถานการณ์ที่ไม่ได้กำหนดขั้นตอนใด ๆ ควรถูกลบออก
- ซอร์สโค้ดควรมีการเยื้องอย่างเหมาะสม
- ควรแก้ไขข้อผิดพลาดในการสะกดคำ
- ไม่ควรใช้คำนำหน้าขั้นตอนของ Star (*)
- ประโยคขั้นตอนไม่ควรนานเกินไป
- ไม่ควรใช้ขั้นตอนของประเภทที่ไม่รู้จัก
- ไม่ควรใช้อักขระตาราง
- ควรกำหนดแท็กในระดับที่เหมาะสม
- แท็กควรปฏิบัติตามอนุสัญญาการตั้งชื่อ
- ไม่ควรตั้งค่าแท็กในตัวอย่าง
- จากนั้นขั้นตอนควรเป็นไปตามนิพจน์ทั่วไป
- ควรมีหนึ่งเดียวเมื่อขั้นตอนต่อสถานการณ์
- ควรลบตัวแปรที่ไม่ได้ใช้
- ควรลบแท็กที่ไร้ประโยชน์
- เมื่อขั้นตอนควรเป็นไปตามนิพจน์ทั่วไป
- ถ้อยคำควรอยู่ในระดับธุรกิจ