你的位置:首页 > 软件开发 > 操作系统 > Android应用开发经验谈——AnDevCon座谈会总结

Android应用开发经验谈——AnDevCon座谈会总结

发布时间:2015-10-12 13:00:12
在AnDevCon的尾声, Doug Bateman主持了一个小组专注于如何才能开发一个扩展到全球数百万用户的Android应用程序。内容包含团队管理、测试和可测性设计、功能和发布管理、支持、开源贡献和可选架构等等。该活动是由NewCircle Training组织并分享了以 ...

在AnDevCon的尾声, Doug Bateman主持了一个小组专注于如何才能开发一个扩展到全球数百万用户的Android应用程序。内容包含团队管理、测试和可测性设计、功能和发布管理、支持、开源贡献和可选架构等等。

该活动是由NewCircle Training组织并分享了以下专家的见解:Howard Harte from Cyanogen, Inc.; Jake Wharton from Square; Ty Smith from Twitter’s Fabric team; Juan Gomez from Eventbrite; Mike Hines from Amazon; Larry Schiefer from HiQES; and Dave Smith from Possible Mobile.

你是如何管理团队来支持大量的功能开发?

Ty简短地描述了Twitter Fabric团队从最初15人到Twitter收购Crashlytics后增长到60人如何负责许多的功能开发。总之,他们的组织保持不变是基于围绕独立功能创建较小的团队,然后确保这些团队至少每周进行交流。Juan强调自动化测试等过程的重要性,以确新团队成员提交的代码不破坏任何东西。

 

相关赞助商

Android应用开发经验谈——AnDevCon座谈会总结

全球架构师峰会,12月18-19日,北京·国际会议中心,8折报名。

 

在将新功能推向海量用户之前你们是如何进行测试的?

根据Mike的说法,你不必将一组更新一次性地推向所有用户。你可以将一个更新推向一小部分用户。亚马逊使用一个内部框架来做A/B测试并能够找出哪些功能使用率下降,通过它就能确定将哪些功能推向所有用户。Ty,从另一方面来说,在开发SDK的时候A/B测试不是一个好的选择,因为开发人员期望更多地是稳定性,他们不喜欢新功能推送多来后一段时间后被取消。所以,从这方面讲,这完全决定于开发人员的反馈、与开发人员合作和重点人群等等。

你们的测试策略是什么?你们使用哪些工具?

在Howard的情况下,考虑到CyanogenMod支持一百多种设备,重度测试依赖于用户在自己的设备上使用它并进行反馈。Jack解释说,在Squre进行三种测试:在提交到主仓库之前要进行单元测试(数千个),通过异步运行慢速的机器测试来检测app的各个流程,最后是手动测试。有趣的是,Square的开发人员尝试使用他们的app模拟所有咖啡和午餐的购买。Juan再次强调了自动化测试的重要性,尽管他们也依赖于专门的QA团队。他们曾经使用Robotium作为工具,而是现在切换到了Espresso。

在回答观众提出的一个问题时,Jake提出了自己对于Robotium的看法,它是围绕基本的Android Instumention API的包装,所以它并没有解决你在测试异步操作时的基本问题。例如你不应该进行一个新的测试直到确保所有与前一个相关的任务已经完成。Espresso,从另一方面来看,采用了一种新的方式,即在清除了主循环的所有消息之后就可以进行一个新的测试。除此之外,他还说,如果你使用了与网络相关的library,你可以这样说:不要进行新的测试,直到没有网络活动。Espresso还有一些明确的API来使得你能够进行更高级别的测试。

 

原标题:Android应用开发经验谈——AnDevCon座谈会总结

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录