Linux環境搭建 jmeter+jenkins+ant環境,Linux下安裝JDK、jmeter、ant、jenkins

来源:https://www.cnblogs.com/-hu-/archive/2020/06/10/13084930.html
-Advertisement-
Play Games

1、Linux環境下安裝jdk (1)在官網下載一個jdk的版本: https://www.oracle.com/technetwork/cn/java/javase/downloads/index.html 點擊勾選後,直接下載 (2)下載tar包之後,直接解壓jdk:tar -zxf jdk-1 ...


1、Linux環境下安裝jdk

(1)在官網下載一個jdk的版本:

https://www.oracle.com/technetwork/cn/java/javase/downloads/index.html

點擊勾選後,直接下載

 

 (2)下載tar包之後,直接解壓jdk:tar -zxf jdk-14.0.1_linux-x64_bin.tar.gz  

(jdk-14.0.1_linux-x64_bin.tar.gz 是你自己下載的jdk包名)

 

 

 

  解壓好後可以看到有一個 jdk - 14.0.1的文件

  (3)在/usr/local目錄下創建java文件夾,再將 jdk-14.0.1目錄移動到/usr/local/java中

    cd  /usr/local

    mkdir java

    mv jdk-14.0.1 /usr/local/java

  (4)配置環境變數

    輸入 vi /etc/profile進入命令行

    在最後面增加2行

    export JAVA_HOME=/usr/local/java/jdk1.8.0_144

    export PATH=$JAVA_HOME/bin:$PATH

    編輯好之後,按esc到命令模式 輸入:wq!

    保存後需要重新載入環境變數

    source .bash_profile

 

  (5)驗證jdk是否安裝好了

    Java -version

  

    出現以上信息說明jdk已經安裝成功

2、linux下安裝jmeter

  (1)到官網下載jmeter安裝包:http://jmeter.apache.org/download_jmeter.cgi

  

      最新版本直接在頁面中下載zip包

      

 

 

     下滑點擊Apache JMeter archives…可以下載歷史版本

 

 

     點擊binaries進入列表

 

 

     我這邊需要的是5.2.1版本

    (2)下載好之後解壓,和jdk一樣

      tar -zxf apache-jmeter-5.2.1.tgz 

    (3)將解壓好的 apache-jmeter-5.2.1目錄放到 /usr/local下

    (4)配置環境變數,命令行輸入:vi /etc/profile

      export JMETER_HOME=/usr/local/apache-jmeter-5.2.1

      export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HO

      ME/lib/jorphan/jar:$CLASSPATH

      export PATH=$JMETER_HOME/bin:$PATH

      編輯好之後,按esc到命令模式 輸入:wq!

      保存後需要重新載入環境變數

      source /etc/profile

    (5)驗證jmeter是否安裝好了

      jmeter -v

    

    出現如圖界面表示安裝成功。

 3、Linux下安裝Ant

在官網下載ant,https://ant.apache.org/bindownload.cgi

  (1)下載後放到剛纔創建的jmeter目錄:

    mv apache-ant-1.10.8-bin.zip /usr/local/jmeter

  (2)解壓:uzip apache-ant-1.10.8-bin.zip

  (3)配置環境變數:

    export ANT_HOME=/usr/local/jmeter/apache-ant-1.10.8

    export PATH=$PATH:$ANT_HOME/bin

  (4)重新載入環境變數:source /etc/profile

    然後驗證是否成功:ant -version

 

 

     出現如圖信息表示環境配置成功了

4、Linux下利用Ant調用Jmeter腳本生成HTML測試報告

  在Linux上新建目錄:

  [root@wintest ~]# mkdir /root/demo

  [root@wintest ~]# mkdir /root/demo/jmeter_script

  [root@wintest ~]# mkdir /root/demo/result

  [root@wintest ~]# mkdir /root/demo/result/html

  [root@wintest ~]# mkdir /root/demo/result/jtl

  [root@wintest ~]# cd /root/demo

  其中jmeter_script用於存放jmeter的測是腳本(jmx文件),result用於存放測試結果,起子文件夾html和jtl分別用於存放生成的HTML測試報告和jtl文件。

  準備一個jmeter的測試腳本,並放到jmeter_script下。此時,如果直接在/root/demo目錄下執行ant命令,會出現報錯提示build.xml不存在:

  [root@wintest demo]# ant

  buildfile: build.xml does not exist!

  build failed

  Build.xml是ant的構建文件,可以自己編寫一個,或者去網上找一個下來自己進行修改,以下是我這裡的build.xml內容:

<?xml version="1.0" encoding="utf8"?>

<project name="ant-jmeter-test" default="run" basedir=".">
    <tstamp>
        <format property="time" pattern="yyyyMMddHHmm" />
    </tstamp>
    <!-- 需要改成自己本地的jmeter目錄--> 
    <property name="jmeter.home" value="/usr/local/jmeter/apache-jmeter-5.2.1" />
    <!-- jmeter生成的jtl格式的結果報告的路徑--> 
    <property name="jmeter.result.jtl.dir" value="/root/demo/result/jtl" />
    <!-- jmeter生成的html格式的結果報告的路徑-->
    <property name="jmeter.result.html.dir" value="/root/demo/result/html" />
    <!-- ʺ生成的報告的首碼-->  
    <property name="ReportName" value="TestReport" />
    <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />
    <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />
    <target name="run">
        <antcall target="test" />
        <antcall target="report" />
    </target>

    <target name="test">
        <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
        <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}" jmeterlogfile="/root/demo/jmeter.log">
             <!-- 聲明要運行的腳本"*.jmx"指包含此目錄下的所有jmeter腳本-->
            <testplans dir="/root/demo/jmeter_script" includes="*.jmx" />
           <property name="jmeter.save.saveservice.output_format" value="xml"/>
        </jmeter>
    </target>
    <path id="xslt.classpath">
            <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
            <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
    </path>

    <target name="report">
        <tstamp> 
                <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" />
        </tstamp>
        <xslt 
            classpathref="xslt.classpath"
            force="true"
            in="${jmeter.result.jtlName}"
            out="${jmeter.result.htmlName}"
            style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl">
            <param name="dateReport" expression="${report.datestamp}"/>
        </xslt>
        <!-- 拷貝報告所需的圖片資源至目標目錄 --> 
        <copy todir="${jmeter.result.html.dir}">
            <fileset dir="${jmeter.home}/extras">
                <include name="collapse.png" />
                <include name="expand.png" />
            </fileset>
        </copy>
    </target>
</project>

上面使用了一個網上的Jmeter報告模板文件:jmeter.results.shanhe.me.xslhttp://shanhe.me/download.php?file=jmeter.results.shanhe.me.xsl需要下載該文件並放到Jmeter所在目錄下extras子目錄中。

最終,我們的demo結構如下:

註:新手可能困惑為什麼輸入tree命令無效

yum install tree  安裝一下就好了

另外,我們還需要將安裝jmeter所在目錄下extras子目錄/usr/local/jmeter/apache-jmeter-5.2.1/extras的 ant-jmeter-1.1.1.jar複製到ant所在目錄下lib子目錄(/usr/local/jmeter/apache-ant-1.10.8/lib)下,這樣ant在執行時才能正常觸發Jmeter的jmx腳本文件命令如下:

接著修改jmeter配置文件

Jmeter所在目錄下bin子目錄(/usr/local/jmeter/apache-jmeter-5.2.1/bin)下的jmeter.properties,修改如下:(建議把文件傳到windows上改容易一些)

將一些參數設置為 true,可以保存這些結果到jtl文件,如果有需要也可以全部設置為true 來試試。

為了防止出現響應亂碼,最好將這裡編碼設置為UTF-8

Ant構建生成測試報告

以上配置完成後,現在我們只需要執行Ant構建,便可以得到測試結果了。因為在安裝Ant時已經配置了環境變數,所以只需要在項目下輸入 ant,就可以得到jtl文件及轉換後的HTML測試報告。

將測試報告傳到Windows,在瀏覽器中查看HTML報告,如下:

 

 

 5、Linux環境下安裝jenkins

首先安裝jenkins之前,linux中必須安裝好了jdk和maven,jdk上面已經安裝過了,接下來安裝Maven。

Maven官網:http://maven.apache.org/

(1)如果需要通過使用wget命令,直接通過網路下載maven安裝包時,需要在linux系統中安裝wget命令。

  yum -y install wget

(2)下載maven安裝包

在官網中複製鏈接地址

wget https://mirrors.bfsu.edu.cn/apache/maven/maven-3/3.6.3/binaries/

apache-maven-3.6.3-bin.tar.gz

(3)解壓縮maven

  tar -zxvf apache-maven-3.6.3-bin.tar.gz

(4)配置maven環境變數

  vi /etc/profile

  添加環境變數

  export MAVEN_HOME=/root/demo/apache-maven-3.6.3

  export MAVEN_HOME

  export PATH=$MAVEN_HOME/bin:$PATH

  編輯之後使用 source /etc/profile命令使改動生效

5)輸入 mvn -v查看是否安裝成功

 

 6、確定JDK和Maven沒問題之後,開始安裝jenkins

(1)在根目錄下創建文件夾

  mkdir jenkins

  下載Linux jenkins 官網地址https://pkg.jenkins.io/redhat/ 

  直接輸入以下命令:

  sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo

  sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key

  yum install jenkins

  下載可能會比較慢,可以使用我下載好的安裝包

  鏈接:https://pan.baidu.com/s/1ahcoUWcm23PVs7d9IeJfsw

  提取碼:3hc6

  下載完成後,將jenkins包放到jenkins目錄

  (2)進入jenkins目錄解壓,解壓目錄:

  rpm -ivh jenkins-2.174-1.1.noarch.rpm

  解壓成功之後,查看jenkins安裝的目錄

  whereis jenkins

 啟動jenkins

啟動後再瀏覽器中輸入:http://ip:8080

進入頁面如下

可能有的同學瀏覽器打開提示無法訪問

首先啟動jenkins是否啟動了

sysemctl status jenkins 查看jenkins的狀態:

顯示是正常運行的

下一步就是檢查防火牆了,

Systemctl status firewalld

這裡發現防火牆正運行,應該是沒有開放jenkins的埠:

我們先用下麵的代碼來查看有沒有開放我們設置的jenkins的埠:

firewall-cmd --list-ports
如果發現沒有jenkins的埠,則用

firewall-cmd --permanent --zone=public --add-port=8080/tcp
開啟已經配置好的jenkins的埠,然後在重啟防火牆,註意一定要重啟防火牆!

systemctl reload firewalld

進入jenkins頁面後提示需要輸入密碼

進入頁面上寫的路徑:cd /var/lib/jenkins/secrets/

cat initiaAdminPassword

 

輸入密碼後就到了這個頁面,大功告成。

 

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 《C# 敏捷開發實踐》 [作者] (英) Gary McLean Hall[譯者] (中) 許順強[出版] 人民郵電出版社[版次] 2016年07月 第1版[印次] 2016年07月 第1次 印刷[定價] 69.00元 【第一部分】 (P001) 編寫代碼是軟體開發的核心工作,而編寫好用的代碼有很多 ...
  • API是什麼,Linux系統中系統調用可以理解是操作系統為用戶提供的一系列操作的介面(API), 以C語言為例,我們使用fopen()函數可以打開一個文件,感覺非常簡單。文件保存在硬碟上,要經過複雜的處理才能顯示,這些細節對我們來說是透明的,由操作系統完成。也就是說,我們調用fopen()函數來通知 ...
  • Docker簡介;Docker與虛擬機區別;Docker的優點及內部組件說明;如何安裝Docker與鏡像加速配置。 ...
  • 一個有趣的結論,Cortex-M7上將函數鏈接到8位元組對齊的地址有利於指令雙發射,這就是進一步提升代碼執行性能的秘密 ...
  • 你應該曾經糾結過是用kmalloc(),還是vmalloc()?現在你不用那麼糾結了,因為內核裡面現在有個API叫kvmalloc(),可以認為是kmalloc()和vmalloc()的雙劍合一。屠龍刀和倚天劍的合體。 內核裡面有大量的代碼現在都使用了kvmalloc(),譬如: source/ip ...
  • 密碼的重要性,相信大家都不言而喻。而密碼泄漏或信息泄漏,經常是層出不窮地出現,令人防不勝防。所以,一個強大而複雜的密碼是保證自己賬戶安全的第一步。 為了防止信息泄漏,我們可以做些什麼呢? 密碼足夠複雜; 每個平臺密碼都不一樣,比如QQ,微信,郵箱等; 定期更換密碼。 那怎樣的密碼才算是比較可靠的密碼 ...
  • 今天在使用 yum 命令進行包的下載時候,Linux 提示 沒有可用的軟體包~ 如下: [root@localhost share]# yum -y install wordpress 已載入插件:fastestmirror, product-id, search-disabled-repos, s ...
  • 概述 Zabbix 5.0已經正式發佈,相比4.0,它在可用性,安全性和完整性方面都有一系列重要改進。 支持的平臺 除了現有的官方軟體包和appliances外,Zabbix 5.0現在還支持以下平臺: SUSE Linux Enterprise Server 15 Debian 10 Ubuntu ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...