在CircleCI中自动化JMX文件

时间:2018-10-23 03:28:00

标签: jmeter jmx circleci

我有几个使用blazemeter插件记录和下载的jmx文件。

我想知道

  1. 如何集成到CircleCI?
  2. 如何将其设置为每天运行?

我们将不胜感激任何帮助。

1 个答案:

答案 0 :(得分:1)

  1. 添加CircleCI项目时,您可以选择多种语言:

    CircleCI JMeter Maven

    我建议您选择Maven(Java),因为JMeter Maven Plugin是设置和使用其他JMeter non-GUI execution options中最简单的选择。

  2. 组织您的项目结构,如下所示:

  3. 确保config.yml文件的外观如下:

    # Java Maven CircleCI 2.0 configuration file
    #
    # Check https://circleci.com/docs/2.0/language-java/ for more details
    #
    version: 2
    jobs:
      build:
        docker:
          # specify the version you desire here
          - image: circleci/openjdk:8-jdk
    
          # Specify service dependencies here if necessary
          # CircleCI maintains a library of pre-built images
          # documented at https://circleci.com/docs/2.0/circleci-images/
          # - image: circleci/postgres:9.4
    
        working_directory: ~/repo
    
        environment:
          # Customize the JVM maximum heap limit
          MAVEN_OPTS: -Xmx3200m
    
        steps:
          - checkout
    
          # Download and cache dependencies
          - restore_cache:
              keys:
              - v1-dependencies-{{ checksum "pom.xml" }}
              # fallback to using the latest cache if no exact match is found
              - v1-dependencies-
    
          - run: mvn dependency:go-offline
    
          - save_cache:
              paths:
                - ~/.m2
              key: v1-dependencies-{{ checksum "pom.xml" }}
    
          # run tests!
          - run: mvn verify
    
          - store_artifacts:
              path: target/jmeter/reports
    
  4. 确保您的pom.xml如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>org.jmeter</groupId>
        <artifactId>maven</artifactId>
        <version>1.0-SNAPSHOT</version>
        <build>
            <plugins>
                <plugin>
                    <groupId>com.lazerycode.jmeter</groupId>
                    <artifactId>jmeter-maven-plugin</artifactId>
                    <version>2.8.0</version>
                    <executions>
                        <!-- Run JMeter tests -->
                        <execution>
                            <id>jmeter-tests</id>
                            <goals>
                                <goal>jmeter</goal>
                            </goals>
                        </execution>
                        <!-- Fail build on errors in test -->
                        <execution>
                            <id>jmeter-check-results</id>
                            <goals>
                                <goal>results</goal>
                            </goals>
                            <configuration>
                                <generateReports>true</generateReports>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </project>
    
    1. 就是这样,现在您的构建将在每次提交时触发:

    enter image description here

  5. 您将能够在构建工件中看到HTML Reporting Dashboard

    enter image description here

  6. Scheduling your builds也可以通过类似cron的表达式