MAVEN集成測試環境搭建

1. MAVEN + SVN + HUDSON + SONAR集成測試環境搭建、
1.1 軟件準備
Hudson、Jenkins、Sonar
1.2 軟件安裝
說明:本例均使用將應用程序部署至web容器下,Hudson和Sonar有其他部署啟動方式,如有需要請自行使用,本文不做贅述。
1.2.1 安裝hudson
1)將下載到的hudson.war文件部署至web容器中,啟動web容器。
2)訪問地址http://localhost:8080/hudson,顯示如下:
(8080是容器默認端口,hudson是項目名稱)
1.2.2 安裝sonar
說明:以下內容是快速安裝的示例。
1)解壓sonar.zip,進入war文件夾下,運行build-war文件,會生成sonar.war文件
2)將sonar.war文件部署至web容器下,啟動容器
3)訪問地址http://localhost:8080/sonar/,顯示如下:
4)(8080是容器默認端口,sonar是項目名稱)
 1.3 軟件配置
1.3.1 配置sonar
1)創建數據庫
a)Sonar需要數據庫的支持,其本身自帶Derby同時支持MySQL5.x,Oracle?10g XE,Postgresql和MS SqlServer 2005,推薦使用MySQL
b)創建數據庫:MySQL中創建用戶sonar,同時創建數據庫sonar,未用戶sonar賦予權限。
說明:表和索引活在sonar激活后自動創建。
2)配置數據庫,編輯conf/sonar.properties
sonar.jdbc.username: sonar
sonar.jdbc.password: sonar
sonar.jdbc.url: ? ? jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true
sonar.jdbc.driverClassName:com.mysql.jdbc.Driver
說明:更改數據庫配置,請注意extensions/jdbc-driver/mysql/目錄下是否有對應的驅動
1.3.2 配置hudson
請保證Hudson已經安裝以下插件:
進入Manage Hudson ->Config System進行配置,顯示如下:
1)系統信息配置:
Home directory:hudson目錄
System Message:hudson系統說明信息
# of executors:同時可執行最大數
Quiet period:構建工程之前的等候時間,單位是s,此項較重要可以保證構建工程時項目的完整性
SCM checkout retry count:檢出失敗重試次數2)安全信息配置:
3)JDK配置:
如果系統配置已為JDK配置了環境變量,則此處可以不做設置
4)Maven配置:
Name:為你的maven指定名稱
MAVEN_HOME:指定maven安裝路徑
5)SVN配置:
Exclusion revprop name:指定項目SVN路徑
1.4 環境集成
1.4.1 Maven與Sonar集成
編輯$MAVEN_HOME/conf或者~/.m2下的setting.xml文件,添加如下內容:
<!--sonar -->
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<!-- mysql-->
<sonar.jdbc.url> jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true
</sonar.jdbc.url>
<sonar.jdbc.driver> com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
<!--remote host-->
<sonar.host.url>http://localhost:8080/sonar</sonar.host.url>
</properties>
</profile>
說明: 因為sonar是通過Maven2插件來分析源代碼并把結果注入到數據庫的,所以必須在Maven的配置里設置數據庫的屬性。
1.4.2 hudson與sonar集成
1)安裝sonar插件
2)配置Sonar參數(服務地址和數據庫地址)
1.5 創建和配置job
1.5.1 創建JOB,點擊New Job,顯示如下:
1.5.2 點擊OK,顯示如下:
1)工程概要配置:
2)工程高級配置:
3)源碼管理:
高級配置:
4)構建
2.Eclipse中IDE環境下集成測試
說明:在IDE環境下集成測試非常方便,可以使用的組件有dashboard、cobertura、findbugs
2.1 ? Findbugs:根據既定規則檢查代碼bug
1)修改工程的pom.xml文件,添加findbugs-maven-plugin插件
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<threshold>High</threshold>
<effort>Default</effort>
<findbugsXmlOutput>true</findbugsXmlOutput>
<!-- findbugs xml輸出路徑--> ? ? ? ?<findbugsXmlOutputDirectory>target/site</findbugsXmlOutputDirectory>
</configuration>
</plugin>
2)輸入命令:
mvn findbugs:findbugs
3)結果會生成在target/目錄下findbugsXml.xml文件中
2.2 Cobertura:測試覆蓋率插件
1)修改工程的pom.xml文件,添加cobertura-maven-plugin插件
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.1</version>
</plugin>
2)輸入命令:
mvn cobertura:cobertura
3)結果生成在target/site/cobertura目錄下
2.3 ? Dashboard:圖表顯示測試結果
1)修改工程的pom.xml文件,添加dashboard-maven-plugin插件
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>dashboard-maven-plugin</artifactId>
<version>1.0.0-beta-1</version>
</plugin>
2)輸入命令:
mvn site
mvn dashboard:dashboard
3)在項目targe/site目錄下打開dashboard頁面查看結果
如果安裝了dashboard插件,可以在dashaboard文件中查看所有測試結果信息。


最新內容請見作者的GitHub頁:http://qaseven.github.io/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/281552.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/281552.shtml
英文地址,請注明出處:http://en.pswp.cn/news/281552.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ubus c語言例子,openwrt之ubus例子

好一個icrootLEDE:/# ubus call test_ubus helloworld {"id":1,"msg":"hi","array":["a","b"]}{"id": 1,"msg": "hi","shuzu": ["a","b"]}文件目…

使用Spring訪問Mongodb的方法大全——Spring Data MongoDB查詢指南

1.概述 Spring Data MongoDB 是Spring框架訪問mongodb的神器&#xff0c;借助它可以非常方便的讀寫mongo庫。本文介紹使用Spring Data MongoDB來訪問mongodb數據庫的幾種方法&#xff1a; 使用Query和Criteria類JPA自動生成的查詢方法使用Query 注解基于JSON查詢在開始前&#…

mysqldump導出備份數據庫報Table ‘performance_schema.session_variables‘ doesn‘t exist

今天在bash進行本地數據庫往云端數據庫導數據的時候&#xff0c;在本地導出.sql文件這第一步就出現了錯誤問題&#xff0c;導出sql文件的命令&#xff1a; 1 mysqldump -u 用戶名 -p 數據庫名 > xxx.sql 在做這一步將數據導出的時候報了這么一個錯誤&#xff0c; 1 mysqldu…

在Identity框架中使用RoleBasedAuthorization

本文將介紹在 Identity 框架中如何使用 Sang.AspNetCore.RoleBasedAuthorization[1] 庫。核心介紹Identity 和 jwt 的基本配置我們在這里不再贅述&#xff0c;可以參考最后的項目樣例。核心的代碼主要為 IRolePermission 的實現。internal class MyRolePermission : IRolePermi…

2016年印度公有云服務市場將達13億美元

根據IT咨詢公司Gartner最新調查數據顯示&#xff0c;2016年印度公有云服務市場預計將增長35.9%&#xff0c;達到13億美元。 增長最快的是云系統基礎設施即服務&#xff08;IaaS&#xff09;&#xff0c;2016年預計將增長45.5%&#xff1b;其次是平臺即服務&#xff08;PaaS&…

PAT 1042. 字符統計

1042. 字符統計 請編寫程序&#xff0c;找出一段給定文字中出現最頻繁的那個英文字母。 輸入格式&#xff1a; 輸入在一行中給出一個長度不超過1000的字符串。字符串由ASCII碼表中任意可見字符及空格組成&#xff0c;至少包含1個英文字母&#xff0c;以回車結束&#xff08;回車…

Magicodes.IE 2.7.0-beta發布

2.7.0-beta2022.10.27使用SixLabors.ImageSharp替代System.Drawing&#xff0c;感謝linch90 &#xff08;見pr#454&#xff09;2.6.92022.10.26fix: 動態數據源導出到多個sheet的問題 &#xff08;見#449&#xff09;2.6.82022.10.18Excel模板導出添加API&#xff0c;以支持通過…

光伏逆變器“領跑”:不止于技術

從無到有&#xff0c;從效率比拼到突破99%&#xff0c;在跟進速度上沒話說的國內光伏逆變器企業難免深陷“價格戰”、同質化的泥潭。隨著“領跑者”計劃躍居光伏主流&#xff0c;嗅到市場紅利的企業再次蜂擁而至。 目前&#xff0c;鑒衡認證發布的第一批光伏并網逆變器“領跑者…

Ubuntu 18.04上Qmmp安裝教程

Qmmp&#xff0c;一個開源的基于Qt的多媒體播放器。它具有多種音頻文件格式支持&#xff0c;DSP效果&#xff0c;視覺效果;輸出系統支持&#xff08;OSS4&#xff08;FreeBSD&#xff09;&#xff0c;ALSA&#xff08;Linux&#xff09;&#xff0c;Pulse Audio&#xff0c;JAC…

android自動跑馬燈,Android-最強跑馬燈

Android--最強跑馬燈Android 跑馬燈已經有很多版本&#xff0c;從最基本的TextView&#xff0c;到重寫TextView使TextView取消焦點限制&#xff0c;還有重寫TextView利用ScrollTo方法寫的&#xff0c;基本都能滿足一般需要。然而在使用過程中&#xff0c;發現一些意外---有時會…

python:軟件目錄結構規范

為什么要設計好目錄結構&#xff1f; “設計項目目錄結構”&#xff0c;就和“代碼編碼風格”一樣&#xff0c;屬于個人風格問題。對于這種風格上的規范&#xff0c;一直都存在兩種態度&#xff1a; 1.一種認為&#xff0c;這種個人風格問題“無關緊要”。理由是能讓程序work就…

開啟智能生活新時代 河北省智慧社區建設從各個擊破

智慧社區作為智慧城市的重要組成部分&#xff0c;是城市智慧落地的觸點&#xff0c;是城市管理、政務服務和市場服務的載體。隨著智慧城市的推廣以及新一代技術的普及&#xff0c;智慧社區的項目必將迎來新一輪的快速發展。2016年智慧社區成為企業業務落地的承載點&#xff0c;…

C# WPF 表格控件的前后臺數據交互?

概述GridControl控件使用我們已經進行了實例講解&#xff0c;這節內容我們列舉一個特殊的應用場景&#xff1a;表格中有一列CheckBox&#xff0c;默認都處于勾選狀態&#xff0c;當用戶通過界面操作后&#xff0c;我們要確保用戶至少選擇了一項&#xff0c;相當于一次數據驗證&…

Java(C#)基礎差異-語法

1、long類型 Java long類型&#xff0c;若賦值大于int型的最大值&#xff0c;或小于int型的最小值&#xff0c;則需要在數字后加L或者l&#xff0c;表示該數值為長整數&#xff0c;如long num2147483650L。 舉例如下&#xff1a; public static void main(String[] args) {/** …

android防止左向右滑出程序,Android——ViewPager禁止左右滑動的實現

目錄1 背景用ViewPagerBottomNavigationView多個Fragment快速搭建的頁面切換架構&#xff0c;一個有四個頁面&#xff0c;因為測試需要&#xff0c;需要屏蔽掉中間的兩個&#xff0c;做法是&#xff1a;設置不可點擊選擇&#xff1a;xml布局文件中&#xff0c;BottomNavigation…

Yii2 的快速配置 api 服務 yii2-fast-api

yii2-fast-api yii2-fast-api是一個Yii2框架的擴展&#xff0c;用于配置完善Yii2&#xff0c;以實現api的快速開發。 此擴展默認的場景是APP的后端接口開發&#xff0c;因此偏向于實用主義&#xff0c;并未完全采用restfull的標準&#xff0c;方便前端開發處理接口數據以及各種…

.NET6打包部署到Windows Service

1.安裝Nuget包安裝以下nuget包支持windows service<PackageReference Include"Microsoft.AspNetCore.Hosting.WindowsServices" Version"6.0.10" /> <PackageReference Include"Microsoft.Extensions.Hosting.WindowsServices" Version…

傳統家電在智能家居變革的五大優勢

而在眾多向智能家居領域轉型變革的企業中&#xff0c;看似落后的傳統家電企業&#xff0c;卻占據著一定的優勢。 產品優勢 傳統家電企業在產品上的優勢主要體現在企業擁有產品本身的設計、技術、生產、制造和營銷渠道&#xff0c;其產品不論是從外觀設計、零件制造還是零件組裝…

《Apache Kafka實戰》讀書筆記-調優Kafka集群

《Apache Kafka實戰》讀書筆記-調優Kafka集群 作者&#xff1a;尹正杰 版權聲明&#xff1a;原創作品&#xff0c;謝絕轉載&#xff01;否則將追究法律責任。 一.確定調優目標 1>.常見的非功能性要求 一.性能&#xff08;performance&#xff09;最重要的非功能性需求之一。…

android emoji unicode編碼表,unicode編碼

unicode編碼app是一款字符查找客戶端應用&#xff0c;通過unicode編碼可以方便尋找特定字符&#xff0c;查看字符表情詳細的描述&#xff0c;并且利用unicode編碼就可以快捷復制任意unicode編碼&#xff0c;提高開發效率&#xff0c;非常的實用&#xff0c;快來下載unicode編碼…