以大写字母开头的Spock定义被视为groovy方法,并在SonarQube中显示为bug

时间:2017-08-10 12:16:19

标签: sonarqube spock

在spock中定义的defs如 def“登录并移至结帐页面”(){ }

SonarQube将其视为groovy方法,并显示为方法名称应以小l开头且不是大写L [登录和移动....}

的错误

请你帮忙定制声纳规则,以免忽略spock方法

2 个答案:

答案 0 :(得分:0)

如果您的项目不需要,您可以从Sonar分析中排除Spock测试:

sonar.exclusions=src/test/*.groovy

否则你应该找到相应的规则并更改默认的正则表达式,例如^[a-zA-Z0-9]+$。但我不确定你是否只能专门为groovy测试文件做这个。

答案 1 :(得分:0)

我已将Sonarqube配置为忽略Sonar的规则“方法名称”,用于存在Geb spock脚本的文件夹

工作正常

要了解如何配置,请按以下步骤操作:

1.Goto Administration tab->Analysis Scope->Issues
2.There , you will find "Ignore Issues on Multiple Criteria".
3.Provide Rule ID in "Rule Key pattern" textbox [Rule ID can be found by clicking on the particular rule and find it in top right
corner]
4.Provide Filepath for which you need to ignore rule in "File Path Pattern" textbox
5.Click on Save Issues settings

请参阅以下图片,了解规则名称的位置以及路径的配置位置 Image to know where Rule ID will be present in the page Image where Rule key pattern and File Key pattern text boxes are present