博文

什么是冒烟测试?(2011-08-02 14:38:00)

摘要:关于冒烟测试,应该是微软首先提出来的一个概念,和微软一直提倡的每日build有很密切的联系。具体说,冒烟测试就是在每日build建立后,对系统的基本功能进行简单的测试。这种测试强调功能的覆盖率,而不对功能的正确性进行验证。从这一点看和所谓的“接受性(验收)测试(Acceptance Test)”非常相似。不同之处就在于他们执行的频率和被测的版本不同。

  至于冒烟测试这个名称的来历,大概是从电路板测试得来的。因为当电路板做好以后,首先会加电测试,如果板子没有冒烟在进行其它测试,否则就必须重新来过。类似的如果冒烟测试没有通过,那么这个build也会返回给开发队伍进行修正,测试人员测试的版本必须首先通过冒烟测试的考验。

  冒烟测试的说法据说是:

  就象生产汽车一样,汽车生产出来以后,首先发动汽车,看汽车能否冒烟,如果能,证明汽车最起码可以开动了。说明完成了最基本的功能。

  冒烟测试一般用于每日构建(Nightly build),构建服务器首先从CVS服务器上,下载最新的源代码,然后编译单元测试,运行单元测试通过后,编译可执行文件,可执行文件若可运行,并能执行最基本的功能,则认为通过了冒烟测试,这时,构建服务器会把程序打包成安装文件,然后上传到内部网站,第二天一早,测试人员来了以后,会收到构建服务器发来的邮件提示昨晚是否构建成功。若构建成功,则测试人员进行相关的功能测试。所有这些功能的完成,一般是靠编写脚本完成的,目前比较常用的脚本有TCL,Perl,Python及功能弱弱的批处理。用这些可以完成系统的每日构建。

  简单的说,就是先保证系统能跑的起来,不至于让测试工作做到一半突然出现错误导致业务中断。目的就是先通过最基本的测试,如果最基本的测试都有问题,就直接打回开发部了,减少测试部门时间的浪费。......

阅读全文(1658) | 评论:0

smoke test(2011-08-02 14:37:00)

摘要:smoke test(冒烟测试)最初源自微软以及很多大的软件公司,"daily build and smoke test" -- 即每天自动编译及smoke test,这里的smoke test仅仅是一个简单的测试,看看我们编译好的产品是否“冒烟”以检查每天编译的结果是否成功。   smoke test可以极大的减少集成失败的风险。   带来的好处   虽然这是一个非常简单的过程,但却有非常重要的意义:   1、能最小化集成风险   项目组可能遇到的一个很大的风险是,项目组成员根据不同的系统功能各自开发不同的代码,但是当这些代码集成为一个系统的时候,也许系统完成不了预期的功能。这种风险的发生取决于项目中的这种不兼容性多久才被发现,由于程序界面已经发生了变化,或者系统的主要部分已经被重新设计和重新实现了,相应的排错工作将非常困难和耗时。极端情况下,集成的错误可能会导致项目被取消掉。每日构造和冒烟测试可以使这种集成错误变得非常小,而且便于解决,防止了很多集成问题的产生。   2、能减小产品低质量的风险   这种风险是和集成不成功、集成出错相关联的。每天对集成的代码做一些少量的冒烟测试,即可杜绝项目中那些基本的质量问题。通过这种方式,使系统达到一种周知的良好状态,维护这样的系统可以防止系统逐步恶化到耗费大量时间排查质量问题的地步。   3、能简单化错误诊断   当系统每天都进行build和测试时,系统任何一天发生的错误都能够变得十分精细,便于排查。比如在17日系统还运行正常,18日就出错了,那么只需要检查这两次build之间的代码变化就可以了。   4、能极大鼓舞项目组的士气   看到产品的不断成长,能够极大的鼓舞项目组的士气,有时甚至不管这个产品到底用来做什么。开发人员可能会为系统显示了一个矩形而感到激动。通过每日构造,产品每天进步一点点,保证项目士气的持续高涨。......

阅读全文(2586) | 评论:0

肖玉航:美债危机是政治与经济双重博弈(2011-08-02 13:53:00)

摘要:  就在欧债危机传出好消息之际,美国债务上限谈判局势却急转直下。美国国会必须在25日前达成共识,否则将赶不及在8月2日前完成立法程序,美国信贷评级遭下调的风险急增。从美债危机的演变来看,实际上国际投资者早有时间预期,而演变的不确定性是难以预料的,从美债危机产生的根源与谈判进程来看,这一经济热点实际上透露的是政治与经济的博弈。   根据此前美国财政部声明,到今年5月16日,美国联邦政府公共债务已达法定的14.29万亿美元上限。如果国会不能在8月2日前提高上限,美国将面临债务违约风险。从奥巴马总统近期声明来看,短期提高债务上限,将有害于美国经济,使美国主权债务评级遭致下调,使每个美国人的信用卡、住房和汽车贷款利率上升。如果短短几个月后,两党再就债务上限问题斗争,这对国家和经济是不负责任的。研究发现,美国总统奥巴马上任以来,实际上美国经济起伏不定,而金融危机的重创,使得美国政府大量印发货币和举债,从目前美国联邦政府公共债务来看,实际突破上限或已有时日。   从时间因素来看,8月2日将是美国提高债务上限的最后期限,因为第一批美国国债即将到期。如果债务上限不能提高,美国政府没钱还债,就会出现债务违约情况,这将导致美国国债信誉大跌,作为全球储备货币和主要结算货币的美元将被大量抛售,全球金融体系将陷入混乱。留给美国政府和共和党、民主党政客们的时间已经不多了。从历史角度来看,研究认为,恐怕白宫与国会都不愿意看到美债危机爆发,可以斡旋的时间仍有,但从政治角度来看,共、和两党之争仍可能将此危机呈现台面,显示话语权,以促使美国政治领域发生利于已方的偏移,从博弈的进程来看,两党分歧日前仍巨大,奥巴马及民主党希望能够上调债务上限2.4万亿至16.7万亿,该债务上限水平可持续至2013年,以保证在总统选举不受政府违约危机所困扰;但众议院多数党领袖博纳则倾向两步走,此次只上调1万亿,由于实际上美国联邦政府公共债务最新总额没有公布,但作为两党与财政部重要人士应该非常清楚。短调还是长调则存在总统选举的时间差问题,而一旦现任政府出现债务危机,则利于他方的政治偏向将显露无疑,因此谈判实际上是一种政治与经济博弈的较量。   总体来看,美国作为世界最大的经济体,此次债务危机的博弈实际上透露出政治与经济的因素。从博弈的预期来看,法律与政治、美国利益将成为重要考量因素,作为资本市场的投资者需要密切关注这一......

阅读全文(3498) | 评论:0

美债危机对中国股市的影响(2011-08-02 13:51:00)

摘要: 从美国传来的消息,美国国债上限提高的消息几无进展,奥巴马政府同参众两院没有达成协议,而这距离8月2日最后期限仅剩下不到一周的时间。虽然在最后关键时刻,可能会达成提高上限的可能,这也是多个美国高官表达的观点。但市场认为美国存在债务违约的风险在加大,美国到时候可能无法及时支付国债利息,进而加剧全球融资成本的增加。国际资本已经选择避险,买入非美货币以及大宗商品进行避险,美元出现快速的贬值。  而美债的贬值,受到影响最大的则是中国,我国目前是美国最大的债券持有国。截至今年5月末,我国持有美国国债11598亿美元,在美国国债规模中占据相当大的比重。国际资本就有理由做空做空的理由,而不是美国。美国国债存在违约风险,将无法保证支付其高额的利息,那么将会造成我国外汇资产的损失。这种因果关系已经在近期美元指数和沪指的走势上得到体现,通过博众研究员观察这两个指数,他们近期存在较大的正相关性。   7月12日沪指大幅下跌,而美元指数则在该日见顶开始下行;虽然随后沪指出现反弹,但面临的则是更大的下跌幅度。7月18日开始这两个指数之间正相关性增强。沪指在7月18日见顶,美元指数则是冲高回落,形成7月12日下跌以来的次高点。沪指在7月25日形成对近期盘整区间的向下突破;美元指数则在7月13日形成对近期区间的向下突破,呈现出弱势格局。   同构这样的对比,我们就很容易发现,美国存在的债务违约风险已经传导至我国。那么在8月2日以前,美国债务上限没有提高的迹象,将会使得美元持续承压表现弱势,进而对沪深股指构成拖累。如果这种预期增大,势必会对本已弱势的我国股市造成进一步的打压。现在找到了这个相关性,可以作为观察大盘走向的一个指标,进而对自己的投资行为做出理性的判断。   美国城门失火,已经殃及到池鱼。......

阅读全文(3741) | 评论:0

美债危机不是危机,而是投机(2011-08-02 13:49:00)

摘要: 一、美债危机的由来 在上世纪90年代初,民主党总统克林顿上台(1993),由于苏联的瓦解,美国得以轻装上阵发展经济,美国经历了黄金的十年(高增长4%,低通胀小于2%,低失业4%),当时格林斯潘掌管美联储,实行低利率政策,而互联网和通信技术的进步,又推动了生产率的提高,增加了需求和投资,加之世界自由贸易的拓展,推动了跨国公司的扩张,例如沃尔玛、宝洁、可口可乐、通用电气、波音、英特尔、微软、摩托罗拉等公司都获得了快速地发展;美国这时候的战争支出也较少,影响大一点的南斯拉夫战争而已。在克林顿时期,虽然出现过互联网泡沫危机等,但经济总体上非常良好,美国政府还出现了少有的财政盈余,不过隐患是由于低利率导致投资与杠杆快速增加,房地产和资产市场都累积了较大的泡沫。后来,共和党总统布什上台后,美国为了增强世界的领导力,到处出击和扩张,并且在后来打了十年的反恐战争,入侵伊拉克和阿富汗,美国的支出大大增加,财政赤字增加,美国的债务快速上升,当然美国的军火商自然大大受益。克林顿虽然经历了“莱温斯基事件”而被控妨碍司法公正并被参议院弹劾,但良好的经济和就业率成就口碑挽救了他,坐满了2届任期;继任者布什有钱挥霍,增强了美国的领导力和影响力,同样坐满了2届任期8年,但也在世界上树敌太多,尤其是激怒了穆斯林,最终导致了911恐怖袭击事件的发生。2任总统在位的16年,掌管联储的都是神圣而寡言的格林斯潘。 布什任期的最后一年,2008年,由于美国次级房贷违约率的提高,终于导致了市场的危机,很多金融机构的倒闭破产,实体受损,并席卷全世界。为了救市,美国政府的支出不断增加,直至今日最终触及14.29万亿美元的法定上限。触及上限天花板后,必须由国会通过立法重新提高债务上限,政府才可能正常运转,国债的还本付息才能正常(按时)进行。
二、美债危机一直存在 所有的债务危机,原因只有一个,就是“入不敷出”,症状都是债务雪球越滚越大,当支付不能按时继续时,危机火药桶便爆发。以2010财年计算,美国GDP总额为14.62万亿(小数点2位数)美元,截至目前的债务为上限14.29万亿美元,相当于GDP总额的98%;2010年的财政收入为2.16万亿美元,支出为3.46万亿美元,财政赤字为1.3万亿美元左右,而2011年的现在财政赤字约为1......

阅读全文(2507) | 评论:0

美债、欧债和地主债对A股影响几何?(2011-08-02 13:48:00)

摘要:——以下内容引自己老刘在股吧帖子“【【老刘看大冷:系统性地分析阐述大冷股份】】”中76楼的回复: 76
【【老刘看大冷:系统性地分析阐述大冷股份】】   [原帖]
想听听老刘对美国国债问题(赖债隐忧)对我股市会否构成严重利空影响的分析见解
作者:220.191.231.*  2011-07-18 08:43:12 谈美国国债、欧债危机等问题 首先,要看的是他们自己股市的影响,其它再来谈对第三方的影响 我们国家那些所谓的专家学员整天地把欧债危机挂在嘴边,但是人家德、英、法等国家的股市一直运行的很好,难道欧债的影响,中国会比德、英、法等国家还严重吗?这当然是不可能的。 德、法能让欧元区解散吗?肯定是不会的嘛。 有了2008年美国金融危机的教训,欧债危机还会重演吗?肯定是不会的嘛 再谈美债的影响,几乎全球主要经济体国家手中都有大把的美债,中国第一日本第二,德、英、法等国家手中肯定也不少,除非美国不想做全球的老大,否则不可能会出现美国国债违约。 美国的很多政策都是为了拉选民,共和现在叼难属于民主的奥巴马政府,就是要让奥巴马出丑,或者向奥巴马加条件要好处,但最终结果肯定是美债上限提高得到通过,这就是美国政治 如果说到欧债危机、美债等对中国股市的影响,那就是那些所谓的专家学者们整天在媒体上夸夸其谈,然后这些言论影响了投资者的判断,仅此而已 作者:老刘de江湖    发表时间:2011-7-18 09:36:16   ——以下内容是老刘在飞信中与一朋友的交流记录: 老刘的朋友(隐去飞信中的称呼)   总之,买大冷,心小冷,耐心面对我们都关注的资本市场,如果美国一旦产生债务违约那将给世界经济造成危机,故我们必须冷静面对
老刘de江湖(隐去飞信显示的真实姓名)
我个人认为美债违约的概率非常小,当前只是共和党刁难奥巴马,向奥巴马政府要条件索取好处,最终,国债上限肯定会得到国会通过的
老刘的朋友
但愿国会通过啦!我们应该都在盼望国会通过了
老刘de江湖(隐去飞信显示的真实姓名)
因为美国国债违约,损失更大的是美国自己,现在美国是全球结算货......

阅读全文(3467) | 评论:0

OUTLOOK邮件于提醒的设置(2011-07-26 15:06:00)

摘要:Creating a permanent New Mail Desktop Alert I thought it was one of the most excessive* options in previous versions of Outlook and I was happy to see it got a huge functional and cosmetic overhaul in Outlook 2003. Strangely enough it soon became one of the most criticized options as well; the New Mail Desktop Alert.
Old New Mail Alert Outlook 2002 and previous
New Mail Desktop Alert for Outlook 2003, Outlook 2007 and Outlook 2010. Fortunately the criticism is mainly based on only 2 things; "It only works on the Inbox folder" "It cannot be configured to stay longer than 30 seconds; I WANT IT TO STAY PERMANENT!" Yes, I said "fortunately" as both issues can be solved. On top of that; there is another way to notify yourself of newly received e-mails while you were not attending Outlook; View a list of newly received e-mails "It only works on the Inbox folder" By default the new New Mail Desktop Alert will only show when the mail is delivered to......

阅读全文(8509) | 评论:0

pxe是什么?有什么用途?(2011-07-18 11:20:00)

摘要:pxe是一种电脑无盘(即没有硬盘)技术。
预启动执行环境(PXE)指的是那些使得IBM兼容计算机(经常是运行Windows系统)不需要硬盘或是启动软盘就能启动的方法。这种方法早在计算机具有内部磁盘驱动器的时代之前就已经开始发展。PXE通常都是利用固件来启动计算机,这种固件是包含数据的只读内存(ROM)或是可编程只读内存(PROM)芯片,而不是包含数据的磁介质。这还产生了“PXE boot ROM”和“PXE boot PROM”(有时也写成“PXE bootprom”)这样的术语。从ROM或PROM启动免除了对机电设备(物理驱动器)的依赖,同时提高了可靠性及避免了驱动器读取错误。利用当今的内存技术,从ROM或PROM能够很快地启动。PXE也能够用于从网络启动计算机。   介绍  PXE(preboot execute environment)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持来自网络的操作系统的启动过程,其启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTETP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中并执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统,如:Windows 95/98/2000,linux等。   表现形式   PXE最直接的表现是,在网络环境下工作站可以省去硬盘,但又不是通常所说的无盘站的概念,因为使用该技术的PC在网络方式下的运行速度要比有盘PC快3倍以上。当然使用PXE的PC也不是传统意义上的TERMINAL终端,因为使用了PXE的PC并不消耗服务器的CPU,RAM等资源,故服务器的硬件要求极低。   PXE启动原理。 启动过程   PXE是RPL的升级品,它是Preboot Execution Environment的缩写。它们的不同之处在于RPL是静态路由,而PXE是动态路由。其通信协议采用TCP/IP,与Internet连接高效而可靠,PX......

阅读全文(4910) | 评论:1

C/C++语法知识:typedef struct 用法详解(2011-07-16 15:55:00)

摘要:第一篇:typedef struct与struct的区别 1. 基本解释 typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。 在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。 至于typedef有什么微妙之处,请你接着看下面对几个问题的具体阐述。 2. typedef & 结构的问题 当用下面的代码定义一个结构时,编译器报了一个错误,为什么呢?莫非C语言不允许在结构中包含指向它自己的指针吗?请你先猜想一下,然后看下文说明: typedef struct tagNode
{
 char *pItem;
 pNode pNext;
} *pNode; 答案与分析: 1、typedef的最简单使用 typedef long byte_4; 给已知数据类型long起个新名字,叫byte_4。 2、 typedef与结构结合使用 typedef struct tagMyStruct
{
 int iNum;
 long lLength;
} MyStruct; 这语句实际上完成两个操作: 1) 定义一个新的结构类型 struct tagMyStruct
{
 int iNum;
 long lLength;
}; 分析:tagMyStruct称为“tag”,即“标签”,实际上是一个临时名字,struct 关键字和tagMyStruct一起,构成了这个结构类型,不论是否有typedef,这个结构都存在。 我们可以用struct tagMyStruct varName来定义变量,但要注意,使用tagMyStruct varName来定义变量是不对的,因为struct 和tagMyStruct合在一起才能表示一个结构类型。 2) typedef为这个新的结构起了一个名字,叫MyStruct。 typedef struct tagMyStruct MyStruct; 因此,My......

阅读全文(3297) | 评论:0

当你扛不住的时候就读一遍(2011-07-03 20:01:00)

摘要:1,是你的,永远都是你的;不是你的,不管你怎么挣,怎么抢,也都不会属于你; 2,并不是聊得来,就适合在一起;并不是适合,就能够在一起;并不是能够在一起,就会永远在一起;也并不是永远在一起了就会幸福。
3,走的最急的是最美的风景;伤的最深的是最真的感情。
4,当身边的朋友说你是疯子的时候,成功离你不远了。
5,在事实面前,你的想象力越发达,后果就越不堪设想。
6,地球是运动的,一个人不可能永远处在倒霉的位置。
7,你永远看不见我眼里的泪水,因为只有你不在的时候,我才会哭泣。
8,时间就象一张网,你撒在哪里,收获就在哪里。
9,理想和现实总是有差距的,幸好有差距,不然,谁还稀罕理想。
10,人生的两大悲剧莫过于:得不到想要东西和得到不想要的东西。
11,成熟不是心变老,而是,当眼泪在眼睛里打转时却还保持微笑。
12,女人要常常告诫自己:“不要在一颗树上吊死”,否则,你将会狠惨。
13,爱情就像手里的沙子,攥的越紧,流的越快。
14,低头要有勇气,抬头要有底气。
15,人生就像一杯茶,苦…也只会是一阵子,不会苦一辈子。
16,傻与不傻,要看你会不会装傻。
17,女人用友情拒绝爱情,男人用友情换取爱情。
18,你以为最酸的感觉莫过于吃醋,不是的,最酸的感觉是你无权吃醋。
19,真正的朋友是什么?真正的的朋友是把你看透了,还喜欢你、愿意和你成为朋友的人。
20,当我们搬开了别人的绊脚石时,也许恰恰是在为自己铺路。
21,如果无法忘记他,就不要忘记好了,真正的忘记是不需要努力的。
22,再丑的人也能结婚,再美的人也会单身。
23,因为爱过,所以慈悲;因为懂得,所以宽恕。
24,某些人的爱情,只是一种“当时的情绪”,如果对方错将这份情绪当做长远的爱情,是本身的幼稚。
25,男人哭了,是因为他真的爱了;女人哭了,是因为她真的放弃了。
26,能够说出的委屈,......

阅读全文(1925) | 评论:0