Kể từ khi phát hành 'com.android.tools.build:gradle:1.1.0'
Tôi đang di chuyển hầu hết mã thử nghiệm java của mình từ androidTest
đến thư mục test
vì các thử nghiệm JVM nhanh hơn rất nhiều. Nhưng tôi không thể di chuyển tất cả các bài kiểm tra. Tôi thực sự cần thử nghiệm thiết bị vì một số công cụ ContentProvider
.Kết hợp vùng phủ sóng của jacoco từ androidTest và kiểm tra
Tôi đã có phạm vi bảo hiểm 100% trước khi tôi bắt đầu di chuyển. Khi tôi hiện đang chạy bảo hiểm mã jacoco, tôi nhận được 40% cho thư mục androidTest
và 71% cho thư mục test
. Mã của tôi là 100% thử nghiệm nhưng tôi không có báo cáo bằng chứng này.
Có cách nào để kết hợp cả hai báo cáo không? Tôi tìm thấy JacocoMerge nhưng không thể làm cho nó hoạt động.
Đây là kết quả của thư mục androidTest
: build/outputs/reports/coverage/debug/index.html
Và đây đầu ra của test
thư mục build/reports/jacoco/generateJacocoTestReports/html/index.html
tạo ra với nhiệm vụ gradle này:
def coverageSourceDirs = [
'../library/src/main/java'
]
task generateJacocoTestReports(type: JacocoReport, dependsOn: "test") {
group = "Reporting"
description = 'Generate Jacoco Robolectric unit test coverage reports'
classDirectories = fileTree(
dir: '../library/build/intermediates/classes/debug',
excludes: ['**//*R.class',
'**//*R$*.class',
'***/*//*$ViewInjector*.*',
'**//*BuildConfig.*',
'**//*Manifest*.*']
)
sourceDirectories = files(coverageSourceDirs)
additionalSourceDirs = files(coverageSourceDirs)
executionData = files('../library/build/jacoco/testDebug.exec')
}
Nếu bạn đã tìm thấy một giải pháp cho điều này tôi sẽ đánh giá cao bất kỳ gợi ý bạn có thể cung cấp. Cảm ơn. – Kevin