果's profile个辣肥蹄PhotosBlogListsMore ![]() | Help |
|
August 18 Week 32, 醋栗Aug. 10 继续整理。改了一个Tx bigvcc的测试版本。
Aug. 11 ‘Rx BigVCC’测试出问题,VCI值计算问题,临下班时改过来。
Aug. 12 终于整理完第一个大数据结构channel__t。 ’Rx BigVCC’测试仍是3EE9问题。断断续续折腾了一天,确认RMD没有问题。其实RSMU的log就包含RM3报的错,而且建立呼叫的命令与我用的不太一样,但没敢怀疑。
Aug. 13 早上经标哥确认建call命令有问题。继续读代码。主要精力开始转向支持’Rx BigVCC’的测试,另外不明就里地为印度的一个测试提供测试image。 阿甘来杭州,晚上几个士景的同事一块儿吃饭吹牛。
Aug. 14 为印度人的测试编image。两个测’Rx BigVCC’的组都报错误,DSP响应超时或是重复配置连接,但两个的原因都没找出。
礼拜六嘉兴一日游,来到从列车上看见过若干次的鸳湖路上。南湖收拾得不错,而且人不多。整个水系是活的,港港汊汊很有意思,可惜自划船码头没开。晚上回来后被喜子喊去吃烧烤,整到凌晨三点多。礼拜天睡了一整天,只有四个小时醒的。读了契诃夫的《醋栗》,一百一十一年前写的,仿佛说的就是现在。 August 10 Week 31Aug. 3 极粗略地把几个主要的数据结构画成类图,主要是很难把成员函数归纳出来。
Aug. 4 从最简单的一个数据结构connection__t入手整理成员函数。下午先帮标哥编了几个测试image,CPM的问题很有意思。之后没干正经事了。
Aug. 5 整理了两个最简单的数据结构的“成员函数”。又一次开始测’rmd_handle’,DSP platform的版本好像不对。Harri Laakso休假,Juha对这个并不清楚。
Aug. 6 上午读了两个流血的企业改制冲突:通钢和双龙,也读到美国码头工人哲学家埃里克·霍弗的一句话: “当我们在一个群众运动中丧失了自我独立性,我们就得到了一种新的自由——一种无愧疚地去恨、去恫吓、去撒谎、去凌虐、去背叛的自由。” 读了一下午许志永的博客,致以许知远的一句话: “相信个人的力量,你会想影响周围的人,然后这种影响会扩散开,友爱、同情、公正、正直,这些美好的东西,会逐渐浮现而出……”
Aug. 7 一早问了好几个早安,感觉很好。上午继续整理了一个数据结构的成员函数。 周末读《一九八四》、《万寿寺》,在学校bbs上讨论许志永的事情,心情有些沉重。台风前奏,下了两天雨,坐在阳台门前,凉风迎面吹着,看天上乌云一朵朵很快地飘过,想起以前那种暑假就要过完的感觉。 August 03 Week 30July 27 准备了半天,给RS3那边讲了一下RMD针对’Rx BigVCC(RBV)’的修改。回来读RBV的TR,只读了一点。
July 28 没干正经事。在瀚海星云上看到篇牛文,《金轮法王的悲剧》,以此为契机,读了一天的科学八卦直到半夜。
July 29 上午画了几个类图,成员函数无从下手,只是以改动或访问了数据结构的函数充数;下午开会听讲pronto分析。读到Ne’eman的故事: Yuval Ne'eman,以色列人,1925年出生于特拉维夫,15岁高中毕业后进入以色列工学院学习机械工程,同在这一年加入了犹太民兵组织Hagana。1948年5月第一次中东战争爆发,打了十个月,Ne'eman从副营长一直干到旅长。然后在总部系统混,干过总参谋部作战部副部长、国防军规划部长、军事情报局副局长,最后在1958~1960年间派驻伦敦担任驻英武官,同时开始了学术生涯——在巴基斯坦人Abdus Salam(79年诺贝尔物理学奖获得者)指导下读物理学PhD。1962年,Ne'eman独立地发现了the classification of hadrons through their SU(3) flavour symmetry—today known as the quark model(基本粒子分类的重态方法,即夸克模型,另一个发现者盖尔曼拿了诺奖)。此后他的履历表中就写满了以色利核项目首席、加州理工客座、特拉维夫大学物理系主任-校长、德州大奥斯丁分校粒子中心主任之类的东西。2006年4月26日,Ne'eman去世。
July 30 上午读了下《设计模式》,看它里面用的标记。下午和陈钢聊了下。画了一个类图。
July 31 上午将’rmd handle’的修改合并到最新版本上,编译通过,写信催Harri提供DSP platform的测试image。下午组会。 周日借到温伯格的那本《最初三分钟》,非常棒。 July 24 Week 29July 20, Valkyrie 65th anniversary, 杭州四年 上午读了会儿建立呼叫的材料,为基于IP的呼叫监控消息建了点初步的方向。下午听调整DSP内存分配的会。’rx bigvcc’方面,修改了vci的计算方法,但陈英测出问题:message channel没有加入’rx bigvcc’的修改,下班前对应地改了一下。 结束了冲刺的三周,周末松了口气,今天一天都是软的。
July 21 早上得知改后的还是不行,发现’rx bigvcc’下message channel漏赋了gbp_idx的值,修改后发给陈英,她说还是不行。看log,由于vci为128, 148不空闲,所以建ATM端点时driver报错了。一点多自己登到minipate12上看了下,正常重启操作应该不会有问题,不知道她的操作是怎么样的,但rmd代码本身肯定有不健壮的地方。
July 22 早上看了日全食。边盯着陈英那边的测试,边准备周五讲AMRoIP作准备。
July 23,24 23号上午开DSC全体会,陈卓非讲测试挺有道理:要回归测的一定要自动化,只自动化需要回归测的。另外就是每天check-in、做profiling。接下来为AMRoIP准备了一天,感受自己对它的了解是一张破网——到处是漏洞,而且还不连续。搞到24号中午终于有点样子了,下午讲得还连贯——老于等人在下面兜着,边听边解说,所以没被提问噎着冷场。最后应该详细读两个关键消息,因为前次听别人讲觉得这样效果太差,干脆忽略了,有点遗憾。 周一得去给另一组新加入’RxBigVCC’的人讲在它RMD上的实现。 July 20 Week 27, 28July 6 编译代码,改了不少错误。发现这次改动还是照着’tx bigvcc’的葫芦画瓢。下午和标哥检查了一遍代码,花了两个半钟头。明天继续改。
July 7, 大刀向鬼子们的头上砍去 编译通过。上午听kreivi那边讲接口的一个会,开会效率很低,两句话的事。
July 8 上午听’rx bigvcc’测试用例设计的会,感觉对业务不了解,听得很傻。下午被杨帆问到d-vci的取值范围,也被问得目瞪口呆。 整理代码,修改和DSP接口相关的,编译通过。简单看了下STE该如何修改。
July 9, 10, 11 9号做STE修改,试了standalone环境。 10号在standalone上开始MT测试。重温了根据跑飞PC手动找出错位置的流程。DSP未启动。 11号上午来公司,只是熟悉了启动DSP的代码,确认是未收到conf_enquiry_s消息。
July 13 由于没有将DSP image文件名复制,导致文件名缺失,所以未收到conf_enquiry_s。 修改后收到conf_enquiry_s,但DSP发出“参数错误”的消息。标哥认为是同时将正常和’rx bigvcc’的bd配置发给了DSP导致。
July 14, Bastille Day 将’rx bigvcc’使能时的正常bd配置清零,但由于standalone测试用的python脚本有小问题,没有启动p2dext,导致监控不到p2d消息。中午问老于,将p2dext改在rmdprb启动后两秒再启动,重新监控到。DSP仍发出“参数错误”的消息,请陈凯祺帮忙看DSP platform代码,应该是创建memory pool时失败,发信让米兰那边接着找。
July 15 米兰那边不能指望,一天没回音。将start_dsp提前到主线程中调用,以测试rx bigvcc channel的建立、激活。这么一提,由于上下文不对,导致堆栈溢出,弹出kdb窗口,玩了一下午kdb。临下班陈凯祺编了个dsp platform的调试版本,输出用去建memory pool的参数。但clearcase服务器挂了,没法编RMD代码,没测。
July 16 协助陈凯祺调输出参数的dsp platform程序,输出内容不是很稳定,模糊地指向可能是配置参数在dsp platform内部传递时出了问题。……经过半天费劲的根据log做的调试,确认是配置参数没有32位对齐,导致DSP在分析参数时错开16位。解决这个问题后,用standalone上的robot用例测建立信令连接,未成功。
July 17 早上过来加了一堆log,发现漏改一处已被标哥指出的错误,导致不必要的激活channel。修改后RMD处发出创建DSP应用的消息,但DSP报错。检查发现是DSP判定连接号非法,检查代码发现DSP那边对连接号判断没有更新。没编译rmdext,耽误了大半上午。 下午听陈凯祺讲如何编译DSP platform代码,求人不如求己。Cygwin, clearcase, active perl的环境纠缠在一起,把active perl卸了才编译成功。自己改了连接号判断,编了来测。建立连接成功,但是由于有流量,所以robot测试用例没过。按于乐凯说的,把TR参数全部改成0还是没过,相反端口反而挂掉了。
July 18 上午过公司继续,边填初定职称表边测。正好今天有招聘,陈靖来了,问了她,改了信令连接用例里的TR参数,果然就行,其他两个用例没过,礼拜一再说。而且陈靖讲了为什么端口会挂的原因:FLASH里chorus的启动代码版本不对,而用例失败时就会自动执行这个启动代码。把测试image发给杨帆他们。 一年前很不屑定职称这种东西,现在却很为晚一年担心——高级实际上年限熬够就行,还研究有什么破格评高级的办法。洋洋洒洒写了篇自我小结——写总结对自己还是挺好的。 July 06 Week 26June 29 读FImS中与BD相关的描述,结合着读代码这部分。下午标哥再次召集组会讲’rx bigvcc’。 想起2000年秋刚搬到322楼时在顶楼装电视天线的情形。因为是六楼,原来在320用的同轴电缆不够长。为了省点是点,于是买了一段和一个T形接头,把两段接起来。但线有些重量,所以T形头那儿被坠着,接触不良。先是找了根棍,在接头两边分别找了个地方捆在棍上,但怎么绑摩擦力都比重力小,还是吃不住劲。接下来灵机一动——在T接头附近绕了个环:在离T形头十公分的上下两端各选一个点,把这两个点捆在一起。这样T形头位于环上,就不再受力了。
June 30 上午听陈金讲Robot。下午开始’rx bigvcc’修改,改了skfile解析部分。临下班前找於乐凯把standalone环境建起来。
July 1 早上去kreivi那边参加他们的scrum,了解了一下他们对完成时间的要求。上午通读了一下代码,把涉及’bigvcc’的函数列了出来。下午开始函数部分的修改,完成约四分之一。
July 2 早上参加kreivi组的scrum,他们担负的任务比较分散——维护、回归测试、加新功能都有,因此scrum的内容也很分散,效果不太好,没有”sprint”的感觉。 上午听郭鼎讲重构的rmd代码。业务关系比老代码清晰很多——至少不存在数千行的函数,神龙见首不见尾。 下午先听郭鼎讲rmd业务简介,然后参加kreivi那边’rx bigvcc’的讨论。回来终于写了两个多钟头代码。数据结构需要整理。
July 3 上午IPA全体会,下午组会。下午开会前写了一个多钟头代码,除此别没干正经事。开会极耗精力,非常困,晚上回去冲了个澡,躺到快十一点,关灯睡觉。
July 4, 独立日 六点四十,自然醒。从容地锻炼、洗澡、吃早饭,到公司才八点四十。整理BD相关的修改。 June 26 Week 25June 22, 巴巴罗沙 – 巴格拉季扬 上午把’rmd_handle’的修改手动合并到最新代码上,编译后跑了遍测试。不愿意再肉眼检查,开始很慵懒地学python。下午听标哥讲了下BigVCC的修改,下一个月的任务。
June 23 网络自从昨天下午就断了。读了一天电子版的Python in a Nutshell。 询问Harri Laakso什么时候做’rmd handle’的frozen版本,他说要等到’RM3 pid’的修改完成后。
June 24 早上听标哥讲了讲’big vcc’的实现细节,问了老于两个修改frozen的流程。其他没干正经事。
June 25 上午把’rmd_handle’的和’RM3 pid’的修改合并到一起,编译通过。 临下班时老于找我谈了一个多钟头。
June 26 看’rx big vcc’的代码和文档。下午又听了扁标哥的info sharing。 June 22 Week 24June 15 上午没有pate,读了些vim的帮助——因为代码都是传到服务器上编译,如果发现错误得传来传去,很麻烦,干脆在服务器上改代码得了。 下午给Minipate11装包,费了些时间,但’200’的测试终于分流过去,Minipate04可以专用于’rmd_handle’的调试了。
June 16 上午听了一会儿苏宇讲P2D/PDR。 下午调’rmd_handle’的问题:由于有几处向dsp发消息时没有赋rmd_handle,最终造成访问空指针。调试方法实在不方便,花了这么多时间认识了一把。
June 17 读了一整天消息,发现两个错误。其中一个是处笔误,于是漏掉一条’rmd_handle’。下午改正了。 章晓明修改测试,把脚本用上了。但Minipate06环境不大一样(接口板不同),所以只能建基于ATM的呼叫。体现出通用性不好,有点狼狈。 老于点评’200 HSPA用户’的工作:没有理论阈值,没有经验指标,盲目调整参数,基本是在性能包线里乱撞。
June 18 上午读完4条modify相关的消息,确认了昨天下午对’rmd_handle’的修改。 老于转了个链接,讲测试自动化的。下午屋里很闹,戴上耳机,没心思碰代码,把这篇文章翻出来读,感触颇深。纯粹讲大道理的,首先两条就很占理,打动人:需求是发明之母;目标和原则的统一(adherence)。接下来讲什么是好的测试:全自动执行、自动检查、可重复、独立。自动检查部分,我现在做得太差,靠肉眼读了一天半消息。对于编写测试,重点应该在于测试本身,而不是为它而进行的编码。这中间重要的一点就是使问题空间与解码空间之间的差别不要太大——这么说HIT macro是个不错的选择。测试代码组织面临一对矛盾:不要重复编码(Don’t repeat yourself) vs. 把核心逻辑保留在每个测试中。为此引入了两个新的概念:测试(test method)和测试工具(test utility method, 不明白method的含义),后者指与测试无关的支撑性工作,譬如呼叫测试中的建立资源、设置监控条件等。测试用例设计上尽量减少之间的重叠,像原来那种“你在测这个东西,正好顺手把什么什么给测了”的做法实际上要不得。 这篇文章是摘自XUnit Test Patterns - Refactoring Test Code一书。 音乐与阅读—— 现在不太喜欢许知远了,不过这句话不错:“倘若是咖啡馆文化奠定了近代欧洲大学的气质,那么脏兮兮的小酒馆文化则塑造了中国大学的味道,这里无序、不洁,却有着生活中少见的自由,是一个洋溢着平等精神的社交场所,可以暂时忘却对未来的忧心忡忡……”
June 19 痛苦地读了两天消息,想到应该把消息检查自动化了。一早问老于选择什么语言,他推荐python,复用standalone中的python代码。早上看了一下python的简介。 下午组会讨论那篇测试自动化,我先讲了一下——把自己的理解灌输给别人的感觉不错。
周末酷热,只适合在屋里吹空调。杨公堤上凉风习习,但虫子奇多,咬得比蚊子狠毒。21号上午去浙图借Python in a Nutshell,刚巧才被人借走,郁闷。借了《四朝闻见录》作安慰,有意思。譬如讲到佑圣观,原是宋孝宗旧邸,孝宗登基后改为佑圣观——有点保护名人故居的意思。感觉孝宗是个不错的皇帝,对佑圣观路的好感更加深了一层。 June 12 Week 23, 疲沓June 8 上午,终于读完了RNC上所有20个用例的消息,确认没有错误,决定上传代码。但SVN没有写权限,折腾到下午五点左右才拿到。很要命的是,这样一个权限竟然还要收费——虽然是business line上掏。 下午,把增加rmd_handle的修改手动合并到最新版本(中午没能上传的那个)上。听了’200用户’的会,讲怎么设计用例。回来把修改’delay measurement’的版本上传,并修改PAC、在VAX上编译,拿这个编译结果跑了一遍,信息对头(measurement都出来了),消息没细看。把测试image发给测试那边,没有得到测试结果的反馈。 CI还有问题,检入后发了封报错的信给我,吓了一跳。用于发包的AX4000可以由TCL脚本控制,测试那边还是想先因陋就简地手动对付,而写脚本似乎想交给一个专门的组——主动性有欠,但可取的是将这种支持工作的时间花费计入。
June 9 将rmd_handle的修改合并到最新版本上并编译通过。
June 10 处理掉3个和’delay measurement’相关的pronto,让测试部门测。下午得知通过,但他们只负责测报pronto的版本,其他涉及到的版本还得自己测。 下午召集全组检查了一遍’rmd_handle’的修改。
June 11 RMU PAC有问题,等下午芬兰人重做了一个版本,编译了发给测试,让他们再测一把。Pronto页面上表格填得有问题,改了之后又得请测试点一下”passed”。围着流程团团转。 下午终于把’rmd_handle’测起来,DSP没能启动。请郭鼎帮忙看了一下,漏了一条消息没有加——这些问题得从p2d消息入手找原因。和标哥一起把’200’的新测试脚本调了一下。
June 12 原打算在CB 9.6-0上把’delay measurement’测一下,结果没有好的包,到底没装上。给测试编了一堆image,很费时间。还被问了一堆不直接和rmd相关的问题。’rmd_handle’根本没调。 下午听陈靖讲通过LGU建立AMR呼叫的过程,收获不小。 June 08 Week 22, 王徽之欠揍May 31 昨晚看凤凰卫视中文台·皇牌大放送,讲科大,温习了一遍校史。感慨,见贤思齐。 对Minipate04的MGW改造不彻底,需要将接口板更换为NIWU。劳动陈靖帮忙加上,忙活一上午。实验室管仓库的有点逗,老说中午再找,只得一直跟着他,直到把东西找齐。板子插上后,但没有启动起来,问茹黎涛,怀疑是插线有问题。茹黎涛块头很大,人也极宽厚,说重插后还启动不了就给他们报pronto吧。 由于”no measurement”的改动太慢,源文件的版本已经往上增加了很多。下午先看了下SVN的帮助,没有自动合并的办法,手动将改动加到最新的文件里。接下来在CB 9.5上编译、测试。在Minipate04上装好9.5包后回家。 意大利人还是没有把测试跑起来,花了一个钟头又给他们测了一遍。
June 1 上午检出最新的RMD代码,手动加入”no measurement”的改动,并编译通过。 下午先听测试自动化的介绍了一下IPA这边Robot的组织。然后跑了一遍我的测试脚本,其中RMU还是老代码,不管,比对进出RMD的消息,确认参数透传正确,然后再找Sami要9.5上的RMU。又帮意大利人跑了一遍测试。他们终于在我们的pate上自己测起来了。
June 2 上午本准备耐心读一遍9.5跑出来的消息,被陈靖动员去听HSPA QoS测试的东西。有几个测试人员过分热心地询问细节,讲的主线大受干扰,按陈凯琦的话说,“获得朦胧的印象”。 午饭后自己跑去实验室插线,忙活了一个钟头,终于弄好——NIWU正常启动了。回来测,结果基于TDM信令连接失败,杭州这边还没人可问,只能等待芬兰人的回应。测试那边要一个RMU的测试image,才发现我在sofia上居然访问不到这个模块,托张晓明编了一个发给他们。真不知道他们干吗要这种根本不会去用的image(第二天中午和邱涛聊才知道,他们只求自动测试的通过率高于95%,至于在什么东西上面跑,他们根本不在乎)。 帮标哥写了个输出所有chorus线程优先级的脚本函数。脚本框架是个芬兰人写的,非常强大、非常健壮、非常漂亮。但还是因陋就简写好,花了半天调整,搞得输出格式很漂亮。 中午在EDN上读到篇鼓吹深圳瘦供应链的文章,里面说生意的关键:
June 3 早上一来发现来信询问两个pronto的情况。之前从没接受过,看了看,知道和”no measurement”的改动相关。一上午光是确认状态、想下一步怎么做,最后思路整得比较清楚,有了底,午饭前跑去跟邱涛聊了聊,力图扭转他们的想法——用莫名其妙的中间版本把测试通过率混过去。看到他费劲巴拉地手动输入命令,又想推销我的脚本,但被谢绝了。感觉他们不太有动力尽量精确地描述问题根源。上个月和Sami Tilander的交流中我也有点这样,不过那时没有能力描述得很精确,搞得t.Sami屡屡发飚。其实这跟地理距离也有关系:如果两人坐得背靠背,一天到晚问弱智问题也没什么,但信箱里天天看到这种东西确实容易被惹毛。 为了提交修改,还得再在CB 9.5上测一把。问t.Sami要RMU在9.5上的测试版本,收到自动回复说他在布达佩斯做培训,下周才完事。问他们组其他人,结果居然全部不在,反而是t.Sami最早回去。要不到,那就老老实实比对RMD消息——反正得这么做才能心安。才开始就发现1号居然编的是未修改的,傻了吧唧地跑了一下午测试。 重编译后跑了所有用例,然后看结果发现第一个create ack就有问题——之前不会看消息,托标哥检查,放过了。又是傻了吧唧跑了一通。改正后先跑了头一个例子,看create ack对了,再把其他例子跑完。本来准备所有消息读一遍以确认,整理到一个excel表里,搞到晚上只弄了五分之一(这里有没有可能自动检测?)。 没办法“实时”联系到帮忙看基于TDM信令连接的芬兰人Juha:他有空看的时候,pate在跑RNC的测试;切换成MGW后,他又不在。资源紧张,pate没可能空在那里几小时等他来看。晚上Juha来信约了4号晚六点到九点来看。
June 4 昨晚意大利人将流量改成0,测试通过了。让我再跑一遍确认一下。到现在才发现我其实根本不知道他们针对什么在测。抽空看一下。 上午费了老劲看完并整理了单个call的消息。下午本来准备整理modify相关消息,另外看看mass mode建call的消息。但又被意大利人测的问题(单个DSP支持200个HSPA呼叫)抓住,搞了一下午,倒是弄清楚意大利人那边已经改好了(或是原本就没问题,但他们没法确认)。错误日志指向芬兰那边负责呼叫控制的,又开始和他们拉锯。 六点时候Juha登上pate看了一下,只是资源预留的操作问题。本打算看看组里测试用的建TDM资源的脚本,被“200呼叫”的问题冲了。 疲惫。 读了许知远纪念二十周年的文章,感觉挺失望。一种印象:未尝稼穑艰辛,因而不知希望所在,于是理想流于空洞,只侈谈精神解放。
June 5 上午过来又被抓去测200的问题。增加了RM3信息输出,发给芬兰人分析。临中午被标哥抓去给他修改测试脚本。 又是一下午的会。组会上把抓差的脚本改得体面了一点,然后去听“200呼叫”的电话会。这个会效率实在不高。会上又跑了几个modify的测试用例,会后只整理出俩——实在没劲儿了。 重读王徽之“西山朝来,致有爽气”的故事。三年前觉得这人太酷了;现在只想抽这人耳光,吃人饭不干人事。 May 31 Week 21May 25, 阿根廷国庆 上午写Readme发给意大利人。 下午完成接口变化后对应的修改。呼叫没有测量的bug有多个问题绕在一起,我测试工作做的不到位,Sami Tilander跟标哥发飚。
May 26, 老爸生日 标哥检查了一遍修改,上午根据查出的错误修改一遍。中午搬到16楼。 下午起初开始测试MGW版的脚本,搞到一小半,又回头测没有测量的问题。临下班时收到意大利人的信,告诉他们如何切换软件包。
May 27 昨晚pate给意大利人用,测试没有跑起来。今天过来一看,一直在重启。串口线还被人拔了,跟陈靖去实验室重新插上。回来换了一个好包,可能是昨天他们切到一个坏包上了。一上午就这么过去了。很多问题我自己都不明确,还这么向意大利人讲,不会把他们搞得更糊涂? 下午陈靖请RNC应用测试组的人讲了一下他们的测试环境和方法。他们的用例分类很有道理,分层、接口、网元、传输类型等多个维度,但根据具体应用综合为“配置”一个维度。测试环境非常庞大: Pet Tester,一个拥有漂亮界面的test bench。由多台blade服务器组成,上面运行软件模拟RNC外部的网元。这个东西最早在波鸿和赫尔辛基开发,现在移到印度维护了。但感觉他们测试方法乏善可陈,除去Pet Tester提供的强大自动化,没什么出彩的地方。还是大流量跑出问题后,抓海量log来分析。 Pet Tester现在还不稳定。每每碰到错误后,他们会先找印度人确认不是Pet的问题,然后再去找原因。和我那小脚本很像,尤其是这两天被Sami占理拽了一顿。 May 22 Week 20, Mamma MiaMay 18 试图把sprmd_req.c的主干拎出来看,没有完成。 听了一下午大悲咒,回去哼了一路《十一面观音心咒》。官窑博物馆的德化窑白瓷观音很漂亮,想弄个类似的。
May 19 上午和老于聊了一下,他建议我来做测试自动化方面的东西。继续拎主干。 下午大部分时间花在跟一个TPG不能启动的问题,只是加log,由于不熟悉,所以反复了好几次。每次修改十分钟、编译及分钟、测试时重启板子几分钟,至少花半小时。针对接口调整修改消息定义,代码修改未开始。
May 20 干了一天测试。上午和陈靖还有其他测试人员聊一个钟头,测试方面要学些什么。临时抓差,测了一下午意大利人的那个问题。正经事没干,测试也不顺。 中午奔去浙图借预约好的WCDMA Design Book,难得的原版书,五百多页,油墨有股奇怪的臭味。
May 21 昨天发给意大利人的log是错的,白耽误许久,总算弄明白需求了。今天上午过来重跑了一遍。向意大利人建议他们自己做测试,这样更有效率,顺便向他们推销我的脚本。一封信写了半个钟头,英语退步明显。 看了一下minipate04的预定表,下周的使用时间都被“穷凶极恶”地订光了。虽然搞了这么一张表,但现在等于没用,到了还是得去找人商量。 开始进行对应接口的修改,共有39处消息。想顺便整理一下代码结构,把收发消息封装起来。郭鼎认为还是散在各处分别修改,不要做大调整。
May 22 向DSP发消息的地方基本改掉了,剩下的也向标哥明确了。 开了一下午会:先是引入CDSP-2板子后软件对应的修改,三个组开大会估计出一个很可观的值;接下来是和意大利人开电话会议,介绍脚本使用,讲了四十多分钟;最后跑回去开组里周例会。和意大利人开的会挺逗,标哥很照顾意大利人,定在四点半(他们上午十点半),和组会冲突。起初我扒拉扒拉讲了半天,听他们没什么回应。”Hello”了半天才听到那边犹犹豫豫地发出几个音节。搞得我以为这帮家伙畏难不想用了,看看时间还早,这么快就回去有点冤枉——正经其事地向老于请了假不参加组会,于是夸HIT怎么易用,又鼓吹设计人员自己做简单测试、快速迭代多么重要。又演示了一遍,这次那边有些回应了,问MML命令,又问怎么上传测试image——这个我居然忘讲了。总算挺热烈地收工,回来写了个简单的说明给他们,还许诺礼拜一写个readme。他们在米兰分的pate不好用,我还帮着联系让他们用我们的——反正六小时时差,不冲突。 很high地结束这一周。 May 18 Week 19, 最爱湖东行不足May. 11 过完疲惫的一周,周日睡了12个钟头。今天完全不在状态,虽然早上过来把要做的事情列了一遍,只是断续地跑了几个测试,也无心统计结果。浑浑噩噩到下午四点,开始改MGW版的测试脚本,最后也没能挣回一点时间。
May. 12 上午和前半下午仍是白耗,读了几篇许小年的文章。 下午开始改MGW版的测试脚本,到晚上弄得编译通过。明天早起去Minipate09上试一下。陶镇催赶快做“答辩”。
May. 13 简单地跑了一下MGW脚本,资源建成,没有建立呼叫。把ppt大概样子弄了出来,还有许多地方要修改、充实。 邓晓辉在重构代码测试中开始用RNC测试脚本。
May. 14, 15 改ppt,很多不清楚的地方。周五讲了一下,讲得很差。回来给杨栋脚本,用来测一下他修改PQA——这东西使用门槛低,对程序修改后简单验证还是挺好的。
周末钱俊小两口来杭州继续蜜月旅,陪着逛了两天,累坏了。不过彻底换了个心情,周一上班路上感觉很棒。发现我给老韩写的攻略强度太大了,三个年轻人连打车才能覆盖里面写的一半脚程。
May 08 Week18,宵眠抱玉鞍May. 4 白天过得很松,想着写ppt,读了很久A4时RMD的设计文档。由于minipate04要转用做别的测试,再加上要尽快搞好demo,两方面的时间要求都很紧。 午饭依旧很晚,难得碰到和老于一起吃,听他讲了一些还是RMD概况的东西:A4以后没再更新设计文档;与A4相比主要是用server取消并发;RMD是若干用例临时解决方法的大杂烩;主要通过呼叫管理和内存使用两者为基线来建立概念。 傍晚开始往脚本里加mass mode建立呼叫的用例,晚上回归了一遍,仍差了三个用例。5号早起,八点钟过来,补上跑完,但结果仍有问题。 忙了许久,只是测试环境有了个模样,但程序本身仍没有细测。
May. 5 增加面向老硬件的脚本。增加modify用例。 标哥发现modify时参数没有正确传递,修改后modify失败,再退回到modify以前的版本,仍然失败。在将新的RMDPRBGX.IMG放上去前后,有许多莫名奇妙的IMG文件。后来问老于,说是装包过程中产生的,老于建议另外装一个包,专供我自己测试用。 晚上装到十点半,仍未成功。
May. 6 6号再次早起,修改了硬件配置脚本中的两个小错,但仍然折腾未果。等到标哥过来向他请教,他也没头绪,但把薛银丰给抓了过来。薛银丰对MML和pate很熟,敲命令查状态太快了,没有学到什么。很快他就明确了问题所在:启动时DMCU消息通道没有正常跑起来。于是又把许建永抓来,许建永只是确定说通道被冻结,原因得找李莉他们来看。这时候已经花了两个小时了。 上午终于把包装好,把脚本在930的原版包上跑了一遍。临中午时把modify的用例修改正确。午饭回来,张杰上来聊了半个多钟头。他要结婚了。和两三个月前相比,我俩的状态有点互换:他现在有点迷茫,我则觉到有点奔头。不过共同地还是对软件架构不满,对效率不满,没指望很快(一年)能达成什么。还有一点共识:什么叫老员工?老员工就是人品超级好——测试中碰不到错误。 聊完回到位子上,标哥来催modify的例子。他有点太着急了,宁可把脚本放一放,哪怕手动去测。在士景的经历使我坚信:一、让能机器做的绝对不要让人做;二、测试一定要充分、确认。现在测试结果还得靠人来检查,我修行太差,只能由标哥来查。Robot这点很强,检查规则已经脚本化。甭管现在怎么改进我的HIT脚本,以后定要投向Robot的大厦。标哥在另一个minipate上测试,把我写的测试脚本拿过去用,那是老硬件,还没针对它改完成,半成品(可能还是一次性产品)迎来第一个客户! 终于在新装的干净的包上,跑着好歹迭代过几天的脚本,最后modify成功,结果证明程序修改正确。找时间再回归几次。 然后就是今天最棒的经历:把Minipate04改造成MGW。实际上只是加了块CDSP-D板,相应地修改硬件配置,全是陈靖做、我看。回来改出一个MGW版的硬件配置脚本。收获不小。
May. 7, 8 到极限,白天没干什么事情。早上在Minipate04上建MGW呼叫,结果失败,反馈给孙奎他们。下午全没精神,直到四点多,收到芬兰人来信说问题原因在我们这儿。鼓起劲来搞到七点多,弄明白了消息交互,确信修改没错,而是他们没有对应地修改。于是翻出4月3号的信给他,等到八点多没回信就回家了。 8号整理了老硬件上的RNC呼叫脚本,重构了一下。在Minipate09上试了一下,但GTPU有问题,没有成功。 一礼拜没有睡好。接着又是火车上的两觉——晚上回家参加小钱俊婚礼。 May 04 Week 17, 等待落下的那只鞋Apr. 27 今天完成了自动测试脚本的框架,并调试稳定,完成了最基本的语音呼叫(基于ATM和IP的)。很大精力是花在完善易用和界面上,其实跟程序及其测试本身没有多大关系。 下午去听无线接入这块的头儿Marc Rouanne讲未来战略,比较激动人心。核心的一点在于扩展商业领域: 效率 体验 现在大家都集中在左下角,比拼设备的速度、容量、成本等硬指标。但实际上真正重要的是终端用户的终极体验上,因此右上角是蓝海。速度没有用户感知到的速度重要——很有心理声学模型的味道。下一步的动作不全是在左下角和华为等对手竞争,而要向左上和右下扩张,终极目标是抢占右上角。因为2G上的历史地位,因此在服务(解决方案)上诺西比华为占优;同时由于诺基亚手机的因素,对于体验部分也有更好的积累。不过针对终端用户体验,最主要的信息来源并不是来自诺基亚,而是高通! Marc的演讲中更紧迫地指出了华为的强势。比较月初IPA全体会上Tero Peltola(IPA2800 R&D Head)说华为把阿朗丢掉的份额全部吃进,现在认为他们也将吃下爱立信预计要丢失的份额。爱立信表现得比预计要好,不但没有出现下滑,反而有增长;阿朗的下滑则比预期厉害;结果就是华为的增长比预期凶猛得多。 Marc Rouanne是法国人,怪不得听他讲英语比芬兰人要好很多。长得有点像奥沙利文。
Apr. 28 测试脚本完成了全部八组用例,但仍有四个经由NPS1板的例子没有成功。可以通过脚本自动导出log。
Apr. 29, 30 在完善脚本中度过,ppt只写了一点。了解了一点调试方法,实际上不是经由NPS1的例子失败,而是所有IuPS口的呼叫都100%丢包。 30号下午跟着标哥按A11的指标修改skfile,比较原始:不停地复制-粘贴。标哥希望能够修改skfile语法,我觉得最好写一个脚本从excel表自动生成skfile,就像李欢欢在ISS中做的指令集编码。 30号晚上八点一刻,在庆春路购书中心买到Thinking in C++的影印版,终于用掉刘雷太太给的书券。在书券有效期的最后一小时,买到这本书的最后一本。
ppt没写完,demo得推后,已经延迟了半个月,忧虑。感觉像在等待落下的另一只鞋,不过是自己去争取,让鞋尽快落下。 April 26 Week 16Apr. 20 加了log,反复练了一下读消息。最简单的用例下,可以透传参数了。由于测试版本修改了数据结构,因此不能使用emil工具。以后练得读消息像看mp3内容一样也行。 代码组织不好:代码量庞大、数据结构复杂、过程化的处理。缺乏注释,不能直观知道一个变量或一段程序是干什么的,但还是因为代码量,在一个超长的while循环里翻回去看注释也不方便。不能轻易改动,牵一发而动全身。 听了一上午A11的介绍,讲得有点乱。下午修改代码,没什么大的进展。标哥检查时发现两处笔误,也真难为他能看到。 今晚先建基于IP的呼叫用例,往后要有计划地进行测试了。 焦头烂额的两天。忘了怎么过来的,混在一起写吧。 只成了熟悉命令了。22号最逗:命令中混了个空格,死活没看出来。一直报句法错误,结果什么测试也没做。23号一早请陈靖过来看,她也纳闷,随手退格重敲,行了。除此外23号也是在瞎逗:胡乱改了个参数,结果回环到别的地方,建立呼叫没有成功的,100%丢包。标哥只好退而求其次,把进出rmd的消息存下来,表明参数透传过去就得。 手动敲命令,疲惫不堪,倒是熟悉命令了。 开了一天会,上午听陈靖讲建call的最后一部分,下午先听讲思科AX4000的使用,一个可以产生ATM包的机器。最后是组会,我主持,主持得不好。因为大部分内容是非常细节的讨论,现在没法跟上,只是秘书的干活。 April 18 今天你堕落了吗? 很逗。读着成吉思汗、瘸帖木尔这些征服者的历史,读得心里有点空还有点酸,却无聊地躺在床上体会这空落落、酸溜溜。 中学的时候,想着征服中亚,像唐朝一样,把中国的权威推到咸海和阿姆河南岸;大学时,想着去花剌子模、布哈拉、撒马尔干这些传说中的地方去看看;今天,上午躺在床上无聊难受,中午坐在涮锅前听同学两口子讲买房看房的累。 征服中亚,从理想到狂想,现在狂想也快没有了。我的生活正在变向柴米油盐。 又想起了《天堂王国》里的铁匠和男爵贝连,“让世界变得更多一点理智”。还有张健的话,“工程师的职责是让人们的生活更美好”。好远的声音,我还能坚持相信吗? “瘸帖木尔的孙子、米兰沙之子,22岁的乌马尔-米尔扎以其父之名统治着木干草原、阿塞拜疆和巴格达。帖木尔的四子沙哈鲁,在父亲死时是28岁,接受了呼罗珊。帖木尔的另一个孙子、米兰沙的四子哈里勒,21岁,在塔什干被军队拥立为王。他向撒马尔干进军,在祖父去世两个月后登上帝位。” April 17 Week 15Apr. 13 上午开始使用测试机柜——minipate04。完全是在熟悉命令,按照陈静的教学ppt,一步步敲建call的命令。没有成功,连建call资源都没有建完。这时候中午就到了,只能把pate交出去。Pate数量不足,只能各组轮流用,不是很方便,但每天都有时限,顺便起到督促作用,妥善安排测试工作。 下午本打算回过头再读一下呼叫管理和传输流量的ppt,但看着看着就走神了。晚上pate还是被下午的使用者占用,于是按时下班。
Apr. 14 上午仍然是读ppt,在无所事事中度过。在EDN上读到一篇很棒的文章,《被裁后的生活》。感触很多,临中午时在学校bbs上灌了一瓢推荐它。 下午排到我用,痛苦地熟悉命令。被建AAL2通路从四点卡到六点,终于等到陈静回来,结果她也搞不定。很郁闷地去吃饭,回来把整个机柜重启了。没想到重启后,居然就行了!其实放在以前,碰见奇怪问题就先断电、重启,看能不能重现。但现在的工作中软硬件质量比较高,碰到问题都认为能复现,所以没事重启的手段就忘了。 今天开始每晚绕北边两个街区跑一圈(在e都市上测了是2870米,感觉没有这么远),为运动会做准备。
Apr. 15 按标哥指出的错误修改sprmd_req.c,对数据结构和操作还是不熟。上午除此就没干正经事了。下午仍然是在pate上瞎摸索,建call稍微熟悉了些,浅尝了下监控命令。对监控对象还是没有概念。晚上原定读读代码,但也没有去做。 低效的一天。
Apr. 16 仍然是上午读ppt,下午连pate测试。使用新的rmd, rm2,结果call没能跑起来。堵了一下午,快六点了标哥建议说用老的rm2,结果可以跑了。抓了一堆log发给芬兰人,他们很快重新编了个版本,一试,好了。 真糟糕,又是瞎忙活很久,真正有点进展只是几分钟就可以搞定的事情。
Apr. 17 早上可是彻彻底底没干正经事,在军武狂人梦网站上看舰船知识。提康德罗加级导弹巡洋舰的设计调整很有意思。 下午测试新的rmd,终于弄清楚监控些什么了。结果显示是错误的,改了代码结果导致整个pate不能启动。熬到晚上终于等到测试人员复了原。今天不敢再瞎造次,周末再说。 April 10 Week 14Apr. 7 开始修改代码(将DSP参数透传到RMU)。上午从FImS和代码中将消息交互整理出来,又请标哥确认了。下午4点原定和标哥开始改代码,但SRB workshop一口气开了四个钟头,被耽误到明早。开会效率不高。 上午在标哥指导下改代码,“准听写”。这种co-programming的方式特有帮助快速熟悉庞大的陌生代码。 下午听陈静讲Call testing的第二部分,IP based calls, 测试命令序列及参数很难掌握。回来后继续修改代码,并编译了一下。编译环境没设置好,不通过。晚上待到九点,头一次。 上午把代码编译通过。新的参数定义没有正确加入,编译环境及流程需要熟悉,另外是Chorus的shell命令。 下午感冒加重,没干正经事,很糟。 把修改后的编译环境发给芬兰人,请他们改与rmd接口的模块。昨晚他们将第一个改过的模块img发了回来。得加紧熟悉测试环境与流程,尽快开始测试了。 上午检查了一遍代码。下午在pate上试了一下命令。 April 03 Week 13Mar. 30 读了一小点config.c,远落后于计划,这么读代码效果很不好。问题整理在Question.txt中,目前没有很出彩的问题,向标哥问了。下午标哥讲了下教学关的情况,主要工作在测试上,我自己还是先集中精力把代码看完。 下午听陈凯琦讲OSE内核,讲得很不错,非常清楚。他读代码的习惯非常好,边读边画UML(用StarUML工具)。而且SourceInsight用得很熟,非常强大的工具。 下午Bas Vodde有个Tech talk,题目叫”Bleeh”。时间冲突了,没有去,很可惜。
Mar. 31 读完config.c,关键是对skfile的解析,但我对skfile本身的句法和含义不了解。
Apr. 1 读了一点atm_ep.c。原定的事情基本上没做。 下午听陈静讲call testing。由标哥指导,用clearmake编了个img文件发给应用那边。至少得先用熟clearcase的这套工具。
Apr. 2 上午听了两个钟头IPA的全体会。 下午一点四十五,被芬兰那边报了个错误(pronto),就是昨天在标哥指导下编译的img。有这么个东西硌着不很舒服——虽然是稀里糊涂卷了进来,我连看pronto网页的权限都还没,怎么改更是没有线索。标哥下午没在,把昨天的邮件翻出来读了下,好像错误已经在这个img中改掉了,是标哥让芬兰人报的,用来跟踪。放下心来看代码,没一会儿,郑建琴挺着大肚子过来,叫我赶紧把这个pronto解决了。不会啊。于是“听写”一样地在她指导下改代码、做版本、踢流程,顺带发现几个帐号问题。
Apr. 3 昨晚和老韩吃饭、聊天,快七年没见了。听他说在部队、航天系统搞技术,因为有养着的闲人,干活的相对少,而资源又丰富,所以更容易冒头。 早上迟到半个钟头。打车来的,大厅保安还上前把门打开,搞得很专业。 下午组会,老于讲了下中期目标,YY了一下。 周中说到周末,atm_ep.c还只读了一半。 |
|
|