柠檬墨绿色 发表于 2016/12/30 16:49

把程序当作故事讲出来

  JVM是按照运行时数据的存储结构来划分内存结构的。JVM在运行Java程序时,将他们划分成不同格式的数据,分别存储在不同的区域,这些数据就是运行时数据。运行时数据区域包括堆,方法区,运行时常量池,程序计数器,虚拟机栈,本地方法栈。

  Java堆

  Java堆是JVM所管理的内存中最大的,是被所有线程共享的一块内存区域,在虚拟机启动时创建,唯一目的就是存放对象实例。所有对象实例及数组都在堆上分配内存

  方法区(别名非堆)

  用于存放被装载的类型信息、类型的常量池、字段信息、方法信息、类静态变量、ClassLoader的引用、Class的引用类型信息。

  运行时常量池

  运行时常量池是方法区的一部分,在Class文件被加载后,存放编译期生成的各种字面量和符号引用

  程序计数器

  程序计数器是一块较小的内存空间,可以把它看成指向待执行字节码的指针,分支,循环,跳转,异常处理,线程恢复等都需要依赖计数器。程序计数器是线程私有的。

  虚拟机栈和本地方法栈

  虚拟机栈是线程私有的,生命周期和线程相同,虚拟机栈描述的是Java方法执行的内存模型,每个方法在执行时都会创建一个栈帧,用于存储局部变量表、操作数栈、动态链接、方法出口等信息。

  局部变量表存放了编译期可知的各种基本数据类型、对象引用模型和returnedAddress类型(指向一条字节指令码的地址)

  在JVM规范中,线程请求的栈深度大于虚拟机所允许的深度,会抛出StackOverflowError异常,虚拟机动态扩展时无法申请到足够的内存时,会抛出OutOfMemoryError异常。

  实习三个月,心态上发生了变化,经手了手机QQ几个迭代版本,熟悉了开发流程和团队间运作模式,整理了一下我的整个实习期间的记录,是原始版本的修改版,其中有涉及到项目的信息的都被我删去。后面两次的周记是我根据每日的记录汇总的。

  2016年7月17日~2016年7月29日 mini项目总结

  这段时间是BG针对实习生进行的一个mini项目,项目内容不限,每组12个左右的实习生组队(包括产品、策划、设计、后台开发、前端开发、移动端开发、测试),我们组阵容强大,感觉能跟这些牛人共事是一种幸福,组队情况是1产品兼职设计(浙大),1策划(华师),3后台(南大,中科大,重大),3前端(吉大,大连理工,重邮),2移动端(吉大,大连理工),2测试(华南理工,湖大)。由于移动端开发人力不够且都是安卓开发,所以我们决定做安卓方面的关于照片分享的app。

  在这几天里,从最开始的十点钟回去,到十一点,十二点回去,再到最后一个晚上的通宵作战,我一开始是有些抵触的,因为我觉得自己的时间被严重的压缩了,但是后来也慢慢地觉得在晚上大家在一起做一件事的时候还是很不错的感觉,就适应了这种高强度的工作,后面的几个晚上我做测试的工作量比较少,加上自己对测试这块没有经验,所以大部分时间是在自己学习和了解系统测试方面的知识。有时候吃饭都是在会议室解决,这里面大部分都是产品经理的照应,帮我们带东西吃,当我们去吃东西。我记得安卓的同学首先做出了第一个功能模块出来的时候,我们每个人都很开心,也很满足,那时候我们组应该算是做得最快的一组,前端的同学也完成的比较快,虽然后面有一辆个晚上没有跟我们一起作战,但是他们也不管是在家还是工位都在忙着这个项目,有时候可能是一些事缠身不能下来。后台的同学在最后几天的时间里压力有点大,忙着修改一些bug,但是他们没有感到灰心丧气,依旧如常,痛并快乐着。最后还有我们测试,感谢令一个测试的同学,我们一起思考讨论做测试,而且最后的测试工作也做得很好。当然我们这几天发生的事远远不止这些,写出来怕是要好几十页。即使这样我们的时间依然不够,我们每天都想多做点事,满怀希望地用心在做这个项目,每个人都付出了很多的努力,虽然最后没有获奖,但是答辩完我们还是很开心地去玩,去吃,每个人脸上都洋溢着会心的笑容,这种满满的幸福感和成就感只有在用心去做好一件事之后才会获得。九天的mini项目拉下了帷幕,但是我们的激情不会褪去,我们依然会以最饱满的精神状态迎接未来的工作。希望在以后的日子里大家都能遵从自己的内心,努力去做好自己。

  2016年8月1日~2016年8月5日 缺

  2016年8月8日~2016年8月12日 周报

  这个星期的工作主要是进行用例的重构,还有新功能的测试和用例编写。在用例重构上,我的心态上面经历了一个转变:从一开始感觉还蛮有信心,但是后面在时间上面没有控制好,变得有点焦虑,最后对于自己重构后的用例也不甚满意。我希望下一周对于用例重构这件事能够在心态上调整自己,尽力做到不拖后腿。

  对于这一周的收获,其实并不在于按照组内制定的规范去重构了多少用例,也不在于了解或是熟悉了多少重构技巧。这短短的一周的时间,更多的是让我静下心来认认真真的做事,不懂的地方要记录下来,想办法自己解决或者在不打扰到同事工作的情况下向身边的人学习和咨询。

  这周存在的问题有:在用例重构的时候对用例所覆盖的功能缺少全局的把握,对改写用例后产生的影响把握不明确,用例的分级确定不了。新功能测试用例的编写还不能保证新功能之外的一些异常情况的覆盖和用例的完整性,没有找到如何去寻找测试失败的原因的方法。下周我将继续进行用例的重构。系统测试的工作也会有所涉及,还有自己利用闲暇之余充充电,多学习测试及相关知识。

  2016年8月15日~2016年8月19日 周报

  从周二起,由于生病的原因,精神状态不太好,每天下班回家回的早,周三休息了一天,所以这周的工作量是不达标的,主要的工作还是在测试用例的重构和系统测试,还有就是参加了组内的用例的评审,根据理解的一些方法又重新回顾了上周重构的用例,对用例完成了进一步的修缮。

  这周遇到了关于QQ的,关于Excel表格的,和其他的一些问题,自己记录在了本子上面并向导师及周围的同事请教了。我的想法是要做好一件事情,要不厌烦,要主动思考,更要状态时刻在线。

  下个星期要搬到腾大,做手Q方面的测试工作,手Q方面项目紧张,对我来说将会怀着积极的态度去应对挑战,所以我会尽快去熟悉终端测试的方法。导师也换了,很感谢xxx这一个多月来对我的关心和照顾,不管是工作上还是生活中:工作上我遇到问题第一时间会去找xxx,xxx都会悉心的指导,生活中我这周身体不舒服,xxx关心的话语令人暖心,我很感激。下周我将认真的完成新导师给我安排的工作,心态调整,主动思考加专注。

  2016年8月22日至2016年9月20日 手Q6.5.5系统测试总结和手Q6.5.8的新需求测试总结

  我从8月22日搬到腾讯大厦手机QQ测试这边,那天下午测试负责人就分配了任务,开始接手的是手Q6.5.5的系统测试,前面的新功能测试是现任导师在进行的,安卓端的系统测试另一个同事完成了一部分(完成100条左右),我把没有完成的那部分测试了一遍(剩下的260条左右),所以我主要做的工作是在6.5.5 ios端的系统测试(360条左右)和两端后续的上线前测试和6.5.8的新功能测试

  1、因为在PCQQ的时候没有进行过系统测试,对系统测试的平台不太熟悉,也没有及时跟导师以及各位同事沟通,所以会导致接下来的错误,我以为在平台里面测完之后,会对测试失败的用例进行总结和统一评审,虽然在测试过程中并没有出现大的bug,在测试接近尾声的时候我一个bug单都没提,用例也没有如我所想的那样进行统一评审,我觉得有什么不对,却没有跟测试负责人说明,所幸这次的疏忽大意没有带来很大的影响,下次若有什么不对劲的,我会去和各位同事沟通。

  2、在测试之初,对用例不熟悉,一条一条的过,没有对整份用例进行梳理,具体的功能点都还不够熟悉的情况下就去测试,这样带来了时间上面的成本和不必要的问题出现,比如:如何免费送花;2小时内被5个人举报;什么情况下拉取头像失败;聊天中第9个人加入的情况;会长怎么更换;会议邀请的入口等等,这些都一一记录,经过这一轮的系统测试,对一些模块的用例较熟悉了,但是其他模块的情况还有待熟悉,经过这一次的系统测试,有了经验教训,就会避免一些坑,多学习和交流也能减少一些不必要的麻烦和错误,作为测试人员,最终的角色还是一名普通用户,理应站在用户的角度思考使用场景,同时也应站在开发人员的角度去深入了解业务逻辑,遇到的问题记录在案方便以后查阅总结,测试的工作要保持全局观,PPT驱动测试www.9ask.cn/cz/
页: [1]
查看完整版本: 把程序当作故事讲出来