在一个Android项目中,我用bouncyCastle新取代了spongyCastle:
implementation "org.bouncycastle:bcpkix-jdk15on:$project.bouncyCastleVersion"
从那时起,在詹金斯(我们的CI)上,似乎正在从该库执行测试,这是真的吗?我从未见过带有自动执行的单元测试的外部库。现在的问题是,我看到许多失败的测试,例如:
org.bouncycastle.pqc.crypto.qtesla.QTeslaKeyEncodingTests.testDecodeEncodePrivateKeyQT3P 27 ms 1
org.bouncycastle.pqc.crypto.qtesla.QTeslaKeyEncodingTests.testDecodeEncodePublicKeyQT3P
是否有办法从gradle的导入库中排除所有单元tets?
答案 0 :(得分:1)
要排除任何单元测试,可以在 build.gradle 中使用:
android {
testOptions {
unitTests {
all {
//exclude '**/QTeslaKeyEncodingTests.*'
exclude 'org.bouncycastle/**'
}
}
}
}
答案 1 :(得分:0)
尝试将您的测试命令更改为此:
./gradlew --stacktrace testDebug --tests=your.package.name createDebugCoverageReport mergeAndroidReports --continue || true
答案 2 :(得分:-1)
idk,如果有帮助,但是我的CI与海绵城堡有关。我通过忽略棉绒包装解决了它们。 在app.gradle中,添加:
lintOptions {
lintConfig file("lint.xml")
}
lint.xml
<lint>
<issue id="InvalidPackage">
<!-- ignore Invalid Package check for spongycastle -->
<ignore path="**/*spongycastle*.jar"/>
</issue>
</lint>
我的问题是棉绒,但您也可以忽略它进行测试。