在 CircleCI 中自动化 jmx 文件
Automating jmx files in CircleCI
我有几个使用 blazemeter 插件录制和下载的 jmx 文件。
我想知道
- 如何集成到 CircleCI?
- 如何将其设置为每天 运行?
非常感谢任何帮助。
添加 CircleCI 项目时,您有多种语言可供选择:
我建议选择 Maven(Java)
作为 JMeter Maven Plugin is the easiest option for setting up and using out of other JMeter non-GUI execution options。
按如下方式组织您的项目结构:
- 你的项目
- .circleci
- 来源
- 测试
- jmeter
- test.jmx
- pom.xml
确保 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
确保你的 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>
- 就是这样,现在您的构建将在每次提交时触发:
您将能够在构建工件
中看到HTML Reporting Dashboard
Scheduling your builds is also possible via cron-类似表达式
我有几个使用 blazemeter 插件录制和下载的 jmx 文件。
我想知道
- 如何集成到 CircleCI?
- 如何将其设置为每天 运行?
非常感谢任何帮助。
添加 CircleCI 项目时,您有多种语言可供选择:
我建议选择
Maven(Java)
作为 JMeter Maven Plugin is the easiest option for setting up and using out of other JMeter non-GUI execution options。按如下方式组织您的项目结构:
- 你的项目
- .circleci
- 来源
- 测试
- jmeter
- test.jmx
- jmeter
- 测试
- pom.xml
- 你的项目
确保
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
确保你的
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>
- 就是这样,现在您的构建将在每次提交时触发:
您将能够在构建工件
中看到HTML Reporting DashboardScheduling your builds is also possible via cron-类似表达式