Данные выполнения класса не совпадают в Jacoco при использовании последних зависимостей Sentry.Android

Форум для тех, кто программирует под Android
Ответить
Гость
 Данные выполнения класса не совпадают в Jacoco при использовании последних зависимостей Sentry.

Сообщение Гость »

Мое тестовое покрытие было нарушено после того, как я добавил последние зависимости Sentry (7.6.0). Я начал получать следующие ошибки для некоторых моих классов:

Код: Выделить всё

[ant:jacocoReport] Classes in bundle 'app' do not match with execution data. For report generation the same class files must be used as at runtime.
[ant:jacocoReport] Execution data for class *** does not match.
После удаления покрытия Sentry работает как надо.
Кто-нибудь сталкивался с этой проблемой?
Вот моя конфигурация jacoco:

Код: Выделить всё

apply plugin: 'jacoco'

jacoco {
toolVersion '0.8.11'
}

tasks.withType(Test).configureEach {
jacoco.includeNoLocationClasses = true
jacoco.excludes = ['jdk.internal.*']
}

project.afterEvaluate {
tasks.register("defaultDebugCoverage", JacocoReport) {
dependsOn("testDefaultDebugUnitTest")
mustRunAfter('testDefaultDebugUnitTest')
group = "Reporting"
description = "Generate Jacoco coverage reports for the defaultDebug build."

reports {
html.required.set(true)
xml.required.set(true)
}

def excludes = [
'**/R.class',
'**/R$*.class',
'**/BuildConfig.*',
'**/Manifest*.*',
'**/*_Provide*Factory*.*',
'**/*_ViewBinding*.*',
'**/AutoValue_*.*',
'**/R2.class',
'**/R2$*.class',
'**/*Directions$*',
'**/*Directions.*',
'**/*Binding.*'
]

def jClasses = "${project.buildDir}/intermediates/javac/defaultDebug/classes"
def kClasses = "${project.buildDir}/tmp/kotlin-classes/defaultDebug"
def javaClasses = fileTree(dir: jClasses, excludes: excludes)

def kotlinClasses = fileTree(dir: kClasses, excludes: excludes)

classDirectories.from = files([javaClasses, kotlinClasses])
def sourceDirs = ["${project.projectDir}/src/main/java", "${project.projectDir}/src/main/kotlin",
"${project.projectDir}/src/defaultDebug/java", "${project.projectDir}/src/defaultDebug/kotlin"]

sourceDirectories.from = files(sourceDirs)

executionData.from = files(["${project.buildDir}/jacoco/testDefaultDebugUnitTest.exec"])
}
}
После некоторых исследований я обнаружил, что Sentry может изменять мои классы. Но я не знаю, как это исправить.

Источник: https://stackoverflow.com/questions/781 ... sentry-dep
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»