赞
踩
1, 准备被测代码;
2, 安装测试工具,进行相应配置;
3, 安装Jenkins 对应插件,并且进行配置;
4, 修改文件;
5, 建立jenkinsfile 文件。
由于这里要用到最新版本的Sonaqube ,必须支持JDK11 。
在“全局工具配置中(Global Tool Configuration )”找到图1 选项。
图1 Jenkins JDK 配置前的界面
在初始化界面,有一个“Please enter your username/password”的超级链接,点击进去,如果你没有设置过Oracle 账号,请设置一个,然后在这里输入注册好的用户名和密码。安装完毕如图2 所示。
图2 Jenkins JDK 配置后的界面
在“全局工具配置中(Global Tool Configuration )”找到图3 选项。
图3 Jenkins MAVEN 配置后的界面
在Jenkinsfile 中作如下设置。
pipeline{ agent any tools{ maven ‘mvn-3.6.3’ } stages{ stage( ‘Build’){ steps { bat “mvn -v” echo"Finsh installMaven"
}}}}
注意,这里中的mvn-3.6.3 必须与图3 中设置得一致。
进入Jenkins 插件中心,下载安装Pyenv Pipeline ,如图4 所示。
图4 安装Jenkins Pyenv Pipeline 插件
打开cmd ,通过以下命令安装虚拟环境。
C:Usersxiang>pip3 installvirtualenvwrapper-win
配置环境变量WORKN_HOME ,值为C:Users{username}Envs 。如图5 所示。
图5 配置WORKN_HOME 环境变量
创建当前版本虚拟环境
C:Usersxiang>mkvirtualenv bobbyvir
pipeline{
agent anystages{stage( “Build”){ steps{withPythonEnv( “C:UsersxiangAppDataLocalProgramsPythonPython38”){ bat “python–version”}echo"python is ok"}}}}
其中C:UsersxiangAppDataLocalProgramsPythonPython38 为python 的安装路径。
PMD 是一款采用BSD 协议发布的Java 程序代码检查工具。该工具可以做到检查Java 代码中是否含有未使用的变量、是否含有空的抓取块、是否含有不必要的对象等。该软件功能强大,扫描效率高,是Java 程序员debug 的好帮手。
与其他分析工具不同的是, PMD 通过静态分析获知代码错误。也就是说在不运行 Java 程序的情况下,报告错误。
PMD 附带了许多可以直接使用的规则,利用这些规则可以找出 Java 源程序的许多问题。
此外,用户还可以自己定义规则。检查 Java 代码是否符合某些特定的编码规范。常见的类型如下:
①潜在的bug :空的try/catch/finally/switch 语句。
②未使用的代码:未使用的局部变量、参数、私有方法等。
③可选的代码:String/StringBuffer 的滥用。
④复杂的表达式:不必须的if 语句、可以使用while 循环完成的for 循环。
⑤重复的代码:拷贝/ 粘贴代码意味着拷贝/ 粘贴bugs 。
⑥循环体创建新对象:尽量不要再for 或while 循环体内实例化一个新对象。
⑦资源关闭:Connect ,Result ,Statement 等使用之后确保关闭掉。
此外,用户还可以自己定义规则,检查Java 代码是否符合某些特定的编码规范。例如,你可以编写一个规则,要求PMD 找出所有创建Thread 和Socket 对象的操作。
这个Project 为基于Java 的TestNGProject 。被测程序如下:
packagecom.jerry.mytest;publicclass Calculator {privatestaticintresult; publicvoidadd( intn ) { result = result + n;}
publicvoidsubstract( intn ) { result = result - n; }
publicvoidmultiply( intn ) { result= result * n;}publicvoiddivide( intn ) { result = result / n;}publicvoid square( intn ) { result = n * n;}publicvoidsquareRoot( intn ) { for(; 声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。