Android CI with docker 这篇无法访问啊
没太理解 jank(硬件渲染掉帧数)的计算方式,我用安卓 6.0 系统的手机执行了一下 fps.sh 取到的 jank 值一直是 0,但是用 adb shell dumpsys gfxinfo 取到的 Janky frames 值和前者不一致,不知道问题出在哪里
今天就试用一下,赞思寒
#41 楼 @doctorq 我运行 gradle test 的结果是这样的:
:TesterDemo:assembleReleaseUnitTest UP-TO-DATE
:TesterDemo:testReleaseUnitTest UP-TO-DATE
:TesterDemo:test UP-TO-DATE
BUILD SUCCESSFUL
Total time: 27.896 secs
然后我执行了 gradle jacocoTestReport 命令,结果是这样的:
Observed package id 'add-ons;addon-google_apis-google-19' in inconsistent location 'D:\android-
:\android-sdk\add-ons\addon-google_apis-google-19')
Incremental java compilation is an incubating feature.
It is no longer possible to set the Jacoco version in the jacoco {} block.
To update the version of Jacoco without updating the android plugin,
add a buildscript dependency on a newer version, for example: buildscript{ dependencies {
classpath"org.jacoco:org.jacoco.core:0.7.4.201502262128" }}
:TesterDemo:jacocoTestReport UP-TO-DATE
BUILD SUCCESSFUL
我的配置文件是这样写的:
apply plugin: 'com.android.application'
apply plugin: "jacoco"
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.exaple.testerdemo"
minSdkVersion 8
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
testCoverageEnabled true
}
debug{
testCoverageEnabled true
}
}
jacoco {
version "0.7.7.201606060606"
}
}
//jacoco {
// toolVersion "0.7.7.201606060606"
// reportsDir = file("$buildDir/reports")
//}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile files('libs/proguard-sdk.jar')
compile 'com.android.support:appcompat-v7:23.3.0'
}
task jacocoTestReport(type:JacocoReport) {
group = "Reporting"
description = "Generate Jacoco coverage reports"
// exclude auto-generated classes and tests
def fileFilter = ['**/R.class', '**/R$*.class',
'**/BuildConfig.*', '**/Manifest*.*',
'android/**/*.*']
def debugTree = fileTree(dir:
"${buildDir}/intermediates/classes",
excludes: fileFilter)
def mainSrc = "${project.projectDir}/src/main/java"
sourceDirectories = files([mainSrc])
classDirectories = files([debugTree])
additionalSourceDirs = files([
"${buildDir}/generated/source/buildConfig/debug",
"${buildDir}/generated/source/r/debug"
])
executionData = fileTree(dir: project.projectDir, includes:
['**/*.exec', '**/*.ec'])
reports {
xml.enabled = true
xml.destination = "${buildDir}/jacocoTestReport.xml"
csv.enabled = false
html.enabled = true
html.destination = "${buildDir}/reports/jacoco"
}
}
@doctorq 弄了一下午,还是 cover 为 0,只能来这边求助了。。。
“通过 eclipse 上的 mat+heap 来分析存在内存泄露方面的节点” 这块看了 GC root,但是看不明白
楼主码了那么多字不容易。不过排版看着怪累的,先赞一下
对 expect result 怎么维护和更新比较感兴趣
如果需要本地生成二维码,可以下载这个工程自己打 jar 包:https://github.com/ariesliu/QRcode4JAVA
相对于各种卖服务,卖基础设施的大会,MTSC 好多了,业界良心
就冲你写那么多,我也要顶一下,看完了,部署起来确实各种大小坑。
我们之前也用过几年,可读性很好,但是维护性不方便,多人协作情况下,feature 文件的 step 如何保证不冲突也是个难题,不知道现在有没有比较好的方法去弄?
支持,我表示用 markdown 去编辑表格很痛苦
#30 楼 @jira https://github.com/ariesliu/QRcode4JAVA 项目地址,你下载下来打包就行,代码很简单,基于谷歌 zxing 项目,你可以自己定制