菜鸟一个,刚入职新公司,学习点滴做起,不知技术要走多远,只求不虚度每一份光阴。
首先介绍一下自己的项目,起初自己是在开发分支(branch)上进行简单的开发。而后由高级技术人员将代码merge到发布分支上(trunk)
接触到的Android test有单元测试(unit test),静态代码检查(checkstyle ,findbugs)
单元测试
1.项目组使用的是 Robolectric,常用的gradlew 打包单元测试的命令是 gradlew clean jacocoFullreport,可在浏览器中查看单元测试结果
2.有时候运行单元测试时出现运行错误,是因为找不到R资源,比如R.string. ;这时候需要进行配置Run/Debug Configuration/Android Junit/Working directory配置为..中的$MODULE_DIR$。
3.注意写单元的测试的规范:extends BaseTest ,
@Before public void setUp() {} @After public void tearDown() {}这两个方法必写此外如果单元测试覆盖率提不上去,可在gradlew中排出ignoredByJacoco = []排除模块moduleExcludes = []排除代码此外许多常量不需要assert。 静态代码检查1.常用命令:gradlew clean chekcstyle gradlew clean findbugs ,可在本地查看结果,或者在jekins上查找2.本地每一个包生成的结果都一样,都是全局检查的结果3.本地生成的代码android_NA_Loc的HTML Report的Percent要高于20%Percent:22.55%4.android_NA_SA-android findbugs中High-=0(必须)5.checkstyle出现以下情况必须修改Missing a Javadoc comment.Unused import - cm.android.mdm.am.bwlist.DataContainer. Name '_id' must match pattern '(^[a-z][a-zA-Z0-9]*$)'. Each variable declaration must be in its own statement. Line is longer than 160 characters (found 167). 6.如何生成静态代码检查结果:项目栏左侧类似构建项目的按钮