找回密码
 注册
搜索
查看: 10229|回复: 20

从测试到研发,协议栈和我。

[复制链接]
发表于 2006-8-28 22:25:00 | 显示全部楼层 |阅读模式
时间退回到2004年11月21日,公司在和我们新进来的员工签约完后,直接被叫到了公司的会议室。

办公室内,公司的老总,副总,各个部门的主管都已经到齐。然后就开始了会议日程。在当时TD-SCDMA

的局势不够明朗,形势特别的微妙情况下

(因为外场测试的通话质量不高和掉线率很高,简单的说就是不稳定,而不稳定,是谁都不敢用的)。

可以看出,会议上的气氛透露出些许的悲壮和惨烈。

(毕竟公司已经在此以前投入了不少于2年的时间,甚至做好了转做小灵通的打算)。

而这对于我们新进的员工来说,一切都是未知数的时候,就不知不觉地卷入了行业。时值今日,当我看到我的师兄
走进大唐移动(上海),他们把TD当做自己的事业来做的时候,这是一个国家和民族的荣耀。这种精神也是我所需要的。


2005年2月28日-2005年6月15号

在回到家休息了一个寒假后,我就直接到公司报到了,开始了我在公司的实习期和大学的毕业设计。时间是:2005.02.28。

在这期间的3个多月里面,更多的是反复的看3GPP协议,主要包括24系列,25系列和34系列。但是效率很低。回顾来看:

主要的是对这个领域的陌生,外语层次的高低在这个领域的表现出来的区分度还是比较低;(即使是分别拿CET4,CET6的两个人)

更多的表现的是在协议的理解上,而这一点在具备了相关专业知识(比如通信原理,编解码)的人相对的要好一些。


建议一:外语水平的高低(只要不是太低)对做协议栈的开发和测试影响不及自身对协议的理解上。


反复的读协议是一个痛苦的过程,但是却是一个极其重要的过程。这是我教训得来的。(说的过份点:不能够深刻理解协议,

就不要做协议栈了;即使做,也不可能做好。)整整3个月多,没有任何头绪的看这些协议文档。期间重点看了23.122,24.007,
24.008,25.304,25.331,34.108,34.123(公司的工作安排需要)。在五一节过后,便开始进入测试组,先是尝试性的编写测试例。

熟习测试工具后,就安排做CC层的集成测试(MO,MT,释放,保持等)。然后在实验室搭建的测试环境下,基于34.123的第十章编写

测试用例。

建议二:高度重视协议的理解;

补充建议:(对想从事该领域的人)
           1。精通C或者C++(我知道的公司大部分好像都是用C),熟习有限状态机的原理;最好有嵌入式开发的经验;
           2。不用过多的关心测试工具,因为现在的测试工具比较完善,可以帮助准确的理解协议;同时每个公司几乎都有
              自己的测试环境和工具;
              
我个人认为,在编写测试用例前,必须对与之相关的协议有深刻的了解,同时明确测试用例的测试目标。如果概念和思路很模糊的话,

一般是写出来的测试例都是没有用的,即使很幸运的通过了,都是不负责任的。或许你的放过的一个漏洞,会直接导致最终产品被直接召回。
我记得去年在写34.123第8章关于RB建立和释放的测试例的时候,就是大概的看了一下协议,就开始写,结果在写RB释放的时候,在释放的次数上,

在是否以透明模式还是非透明模式等问题上纠缠不清,结果写出来的测试例都是一个样子。别说测出什么结果来。简直是一塌糊涂。测试的目的:

是为了发现更多的错误,而不是一次次的去证实正确。


建议三:测试需要严谨和务实的态度;


6月中旬,我请假5天回到学校答辩,回到公司后。开始了正式的在公司试用期。


2005年7月-2005年10月20号      

回到公司后,公司已经开始着手准备7月中旬在北京的外场测试了。在各个公司提供的20多款样机中。当时记得好像是T3G的外场表现的最好;

他们的电话掉线率已经很低了。 弄得其他厂家压力特别大。同时我们也不得不承认自己已经开始落后了。(因为公司当时做的比较好的是

NAS层,AS层虽然完成了单元测试,但是在外场情况,几乎没有什么信心。) 但是整体表现的不是很理想,信产部在后来的9月中旬又组织了第

2轮的测试,但是结果推迟了一个月才对外发布的。

这2次印象比较深刻,主要原因是:外界的舆论(08奥运的3G业务)和TD联盟内部的整体表现不佳,使得TD的去留蒙上了阴影。毕竟身在这个行业中,

是不能够不关心的。

直到10月后,第2轮外场测试,北京天綦演示数据业务,率先向联盟“发难”,以及后来的TD 成为国家标准。才使得TD的前景明朗起来。

  
开始了公司的试用期后,被部门安排去做AS层的测试。当时主要做的是小区选择和重选,寻呼这几块。除了上边提到的几点以外。更多的

感触是:

  1。做协议测试,不仅仅要知道自己所负责的模块的协议,而且上下层间的也要清楚!
     (对协议熟习和精通的高低直接决定自己的薪水高低!!!)
  
  2。协议测试不能够只停留在流程和某条接口信号的消息成员上,最好的能够精确到消息流的每个比特位上。特别是在
     编解AS消息的时候。
     
补充的说一下:

我先前在论坛上面看到有人说:熟习协议可以从做测试开始入手。起初我也很赞同,时值今日,我也认同,但是不可取。

原因如下:

1。作为一个初学者,面对一堆协议,的确要是以前没有做过,很难看出头绪,即使花很长时间。从时间效率的角度上来讲,从

边做测试,边摸索理解协议的途径暂时是可取的。因为TD的34.123的测试用例告知了大概的流程步骤。但是这仅仅只适合初学入门者;

任何的捷径都不能够取代老老实实的理解协议!!!

2。我没有做过黑盒测试,我无权力回答。我只做过白盒测试,我可以清晰地分析出信号的交互,信令和数据的传递。但是在很多时候,

我只关心的测试流程是否一致,和测试结果是否所想要的。而忽略了信令和数据流。而恰恰这是致命的。我曾经写过一个测试例,从

整个测试流程上看没有问题,但是检查数据发现期间错了几次后,奇迹的发现它居然通过了。这个事件告诉我:做测试不能够只停留在

流程和结果上,更重要的是精确到比特流的分析。做到这一点除了能够读懂代码以外,更多的是对协议的理解,要知道:代码只是协议的

实现,其本质还是来自于协议!!!

3。如果只是停留在完成测试任务,和粗略的协议理解,严格的说是不可能有什么长进的!


从7月份到年底,我都在测试组做这些模块的测试。期间公司版本更新了3次,每次不可避免的要进行一致性测试和回归测试。而让我后悔的

的是:我没有把握住这反复测试的过程中,对协议深刻理解的机会。而使我现在陷入比较被动的局面。

2006年02月-至今

在TD的协议栈做的比较稳定的时候,公司开始着手开发双模。,比较幸运的是,我有机会能够参与进来GSM侧的开发,我不得不承认,这是我唯一的机会。

但是从半年的测试转到开发上来,对于自己没有底气。严格的说是自己在做测试的时候很多东西都是含糊不清的。但是自己还能够坚持。很多时候

是没有退路的,只有破釜成舟。
  
也就是大概看了3个月左右的协议后,开始着手写概要设计文档,期间有一个多月的讨论时间。从接口的定义,状态的划分,功能定义,状态描述和流程。
  
几乎经历了无休止的推翻和论证。说实在的,也就是在这段时间讨论带来的进步很快。

个人的经验总结:

1。设计文档越详细越好,代码只是文档的“机器语言”的实现;
2。加强讨论和反复论证;


我现在已经开始写代码了,但是也是痛苦的开始。刚刚写完了编解码函数,和全局变量的定义。

我知道,在我的面前还摆着内存的申请和释放,信令和数据的保存,处理,发送等一些问题,祝福自己能够坚持到底!!!
     


后面写的比较乱了,如果有机会话,等我把这个项目做完了,再重新写。

最后比较一下测试和研发

1。测试需要对整体的协议把握和理解要深刻,每次我们公司那些做测试的主管,把我们研发部门的人问得想跳楼。每次项目会议
   都变成了研发人员的批斗会;
   
2。研发一般不需要对整体的协议的把握(如果能够,那恭喜你,你可以拿到1W/月),但是需要对自己负责的模块达到精通的地步,
    精通到比特流的处理上。
   
   
这个帖子写了几个晚上了,我知道我只是初学者,但是在大约10天前,我发了个帖子请教,但是时值今日无人回答,我不知道是自己的

不幸还是万幸,真诚期望认识这个行业的人,共同进步。

有的时候,发现自己走的孤寂。

我的MSN:hongdou584@hotmail.com
发表于 2006-8-29 10:46:00 | 显示全部楼层
楼主写得不错啊,继续努力吧!
协议要做到融会贯通至少需要3年的时间,想想要看的文档至少一万页以上,没有时间上的积累很难一步登天的。
做协议另一个比较痛苦的地方是更新太快了,新的技术不停的出现,学得很累啊!
点评回复

使用道具 举报

发表于 2006-8-29 14:43:00 | 显示全部楼层
楼主是哪家公司的,我们是同行啊。
点评回复

使用道具 举报

发表于 2006-8-31 10:31:00 | 显示全部楼层
看来大家都比较痛苦啊
还好这里可以交流,解惑
点评回复

使用道具 举报

发表于 2006-9-1 10:12:00 | 显示全部楼层
本想转去做协议测试,有点受打击了。
点评回复

使用道具 举报

发表于 2006-9-1 11:05:00 | 显示全部楼层
能够深刻理解协议,[52RD.com]
[52RD.com]
就不要做协议栈了;即使做,也不可能做好。)
点评回复

使用道具 举报

发表于 2006-9-1 11:46:00 | 显示全部楼层
lz加油![em01]
点评回复

使用道具 举报

发表于 2006-9-13 13:47:00 | 显示全部楼层
都很难的
点评回复

使用道具 举报

发表于 2006-9-15 16:41:00 | 显示全部楼层
向做协议栈的哥们致以崇高的敬意!
点评回复

使用道具 举报

发表于 2006-9-26 11:37:00 | 显示全部楼层

加油!!

都有这个过程
点评回复

使用道具 举报

发表于 2006-9-27 11:30:00 | 显示全部楼层
能坚持做个3年协议栈,出来薪水可以翻几倍了,吃点苦,值得!
点评回复

使用道具 举报

发表于 2006-9-27 11:33:00 | 显示全部楼层
<DIV class=quote><B>以下是引用<I>ailure</I>在2006-9-27 11:30:00的发言:</B>
能坚持做个3年协议栈,出来薪水可以翻几倍了,吃点苦,值得!</DIV>


有这么高么?通信协议几年一变化,做完了3G,人家都要做4G的了,又不是做医生,越老越值钱
点评回复

使用道具 举报

发表于 2006-10-10 09:29:00 | 显示全部楼层
maybe I can answer  some question you some problems ,through I have left this field  now
have research protocol for 5 years , and think farmiliar with some of them ,Same with you
have much trouble ,but no one answer ,no echo .

once developed GPRS protocol ,and developed GPRS handset, untill now , I alwasy use my
the handset developed by myself :)   ,it is  diy ---by myself   ;)
点评回复

使用道具 举报

发表于 2006-10-12 23:40:00 | 显示全部楼层
你好啊,你认识黄金福不?
点评回复

使用道具 举报

发表于 2006-10-18 13:55:00 | 显示全部楼层
就没有大牛出来灌灌??发现手机行业真的很封闭!!!
点评回复

使用道具 举报

发表于 2009-6-24 19:01:00 | 显示全部楼层
mark!!
And then, to update!!
点评回复

使用道具 举报

发表于 2013-3-1 15:04:00 | 显示全部楼层
我现在也在从事协议栈的开发,很痛苦中……
有些问题就是过不去
点评回复

使用道具 举报

发表于 2013-10-28 16:44:44 | 显示全部楼层
写的非常好,赞。
点评回复

使用道具 举报

发表于 2014-1-19 11:19:23 | 显示全部楼层
楼主写的很好,加油!!!
点评回复

使用道具 举报

发表于 2014-5-7 22:27:57 来自手机 | 显示全部楼层
不容易!来自: Android客户端
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-4-25 15:41 , Processed in 0.056894 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表