Gradle 空手道加特林:错误io.Gatling.app.Gatling$-运行崩溃,数据写入程序没有';不能正确初始化

Gradle 空手道加特林:错误io.Gatling.app.Gatling$-运行崩溃,数据写入程序没有';不能正确初始化,gradle,karate,Gradle,Karate,我正在进行空手道测试作为加特林性能测试。使用Maven,框架和集成工作得很好。然而,我们需要在我们的项目中使用Gradle。与gradle集成后,/gradlew gatlingRun--debug失败,出现以下错误。我还尝试了root用户,得到了相同的输出。我怀疑这可能与如何使用gatling.conf初始化LogFileDataWriter的配置问题有关。有没有人面对过这个问题,知道如何解决这个问题?请在下面找到build.gradle和scala类以供参考 例外情况: 2021-02-17

我正在进行空手道测试作为加特林性能测试。使用Maven,框架和集成工作得很好。然而,我们需要在我们的项目中使用Gradle。与gradle集成后,/gradlew gatlingRun--debug失败,出现以下错误。我还尝试了root用户,得到了相同的输出。我怀疑这可能与如何使用gatling.conf初始化LogFileDataWriter的配置问题有关。有没有人面对过这个问题,知道如何解决这个问题?请在下面找到build.gradle和scala类以供参考

例外情况:

2021-02-17T01:45:18.752-0800 [QUIET] [system.out] 01:45:18.751 [GatlingSystem-akka.actor.default-dispatcher-4] ERROR i.g.c.stats.writer.LogFileDataWriter - DataWriter failed to initialize
2021-02-17T01:45:18.752-0800 [QUIET] [system.out] java.nio.file.FileSystemException: /pay-integration-tests: Read-only file system
2021-02-17T01:45:18.752-0800 [QUIET] [system.out]       at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:100)
.
.
.
2021-02-17T01:45:18.757-0800 [QUIET] [system.out] 01:45:18.752 [GatlingSystem-akka.actor.default-dispatcher-2] INFO  i.g.c.stats.writer.ConsoleDataWriter - Initialized
2021-02-17T01:45:18.757-0800 [QUIET] [system.out] 01:45:18.757 [main] ERROR io.gatling.app.Gatling$ - Run crashed
2021-02-17T01:45:18.757-0800 [QUIET] [system.out] java.lang.Exception: DataWriters didn't initialize properly
2021-02-17T01:45:18.757-0800 [QUIET] [system.out]       at io.gatling.core.stats.DataWritersStatsEngine$.$anonfun$apply$6(StatsEngine.scala:99)
插件{
id“想法”
id“eclipse”
id“org.springframework.boot”版本“2.3.3.RELEASE”
id“io.spring.dependency management”版本“1.0.8.RELEASE”
id‘java’
id‘scala’
id“org.jetbrains.kotlin.jvm”版本“1.3.21”
}
分机{
卡拉特版本='0.9.6'
ScalaribraryVersion='2.12.10'
}
组='com.expedia.payments'
版本='0.0.1-SNAPSHOT'
sourceCompatibility='1.8'
存储库{
mavenCentral()
}
布特贾尔{
已启用=错误
}
罐子{
启用=真
}
依赖关系{
实现“org.springframework.boot:springbootstarterweb”
testImplementation('org.springframework.boot:springbootstartertest'){
排除组:“org.junit.vintage”,模块:“junit vintage引擎”
}
测试实现('org.junit.jupiter:junit-jupiter-api:5.4.2')
testRuntime('org.junit.jupiter:junit-jupiter引擎:5.4.2')
测试实现“com.intuit.karate:karate-junit5:${karateVersion}”
测试实现“com.intuit.karate:karate apache:${karateVersion}”
编译“org.scala lang:scala库:${scalalibraryVersion}”
testCompile“com.intuit.karate:karategtling:${karatevision}”
// https://mvnrepository.com/artifact/org.apache.commons/commons-lang3
编译组:“org.apache.commons”,名称:“commons-lang3”,版本:“3.11”
// https://mvnrepository.com/artifact/mysql/mysql-connector-java
编译组:“mysql”,名称:“mysql连接器java”,版本:“8.0.23”
// https://mvnrepository.com/artifact/org.springframework/spring-jdbc
编译组:“org.springframework”,名称:“springjdbc”,版本:“5.3.3”
// https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc
编译组:“com.microsoft.sqlserver”,名称:“mssql jdbc”,版本:“9.2.0.jre11”
// https://mvnrepository.com/artifact/net.sourceforge.jtds/jtds
实现组:“net.sourceforge.jtds”,名称:“jtds”,版本:“1.3.1”
实现“org.jetbrains.kotlin:kotlin-stdlib-jdk8”
// https://mvnrepository.com/artifact/com.microsoft.sqlserver/sqljdbc42
//实现组:“com.microsoft.sqlserver”,名称:“sqljdbc42”,版本:“6.0.8112”
}
试验{
useJUnitPlatform()
systemProperty“karate.options”,System.properties.getProperty(“karate.options”)
systemProperty“karate.env”,System.properties.getProperty(“karate.env”)
outputs.upToDateWhen{false}
testLogging.showStandardStreams=true
}
源集{
试验{
资源{
srcDir文件('src/test/java')
斯卡拉{
srcDirs=['src/test/java']
}
排除“***.java”
排除“***.scala”
}
}
}
//要运行,请键入:“gradle gatling”
任务gatlingRun(类型:JavaExec){
组='Web测试'
description='运行Gatling测试'
新文件(“/pay integration tests/reports/gatling”).mkdirs()
classpath=sourceset.test.runtimeClasspath
main=“io.gatling.app.gatling”
args=[
//更改此选项以适合您的模拟入口点
“-s”,“performanceTestSimulation”,
“-rf”,“/pay integration tests/reports/gatling”
]
systemProperties.properties
}
科特林{
科特洛普斯酒店{
jvmTarget=“1.8”
}
}
compileTestKotlin{
科特洛普斯酒店{
jvmTarget=“1.8”
}

}
此问题已修复。问题在于撰写加特林报告的路径。它应该是-rf',“支付集成测试/报告/gatling”,而不是-rf',“支付集成测试/报告/gatling”。/指的是根目录