【读书笔记】《Google软件测试之道》——第2章:软件测试开发工程师(中)

    今天接着上一篇http://www.jianshu.com/p/bcda928981cd,从第2章:软件测试开发工程师的2.1.9(SET的工作流程:一个实例)开始~

    9)SET的工作流程:一个实例

    该实例讲述了如何使用Protocol Buffer定义数据和接口的设计、如何使用C++语言编写源码和测试代码、如何将测试代码加入构建规则,最后形成CL提交审核的整个流程。

    10)测试执行

    只有能加速开发过程的自动化测试才有意义,测试不应拖慢开发的速度。因此,一个可以做代码编译、测试执行、结果分析、数据存储、报表展示的通用测试框架逐渐形成,工程师专注于测试程序的编写、运行的细节留给通用基础执行框架。

    11)测试大小的定义

    a)小型测试

    小型测试是为了验证一个代码单元的功能,一般集中精力在函数级别的独立操作与调用上。在Google之外,小型测试通常就是单元测试。小型测试范畴隔离且没有外部依赖,这让小型测试可以在很短时间内就运行结束。

    b)中型测试

    中型测试是验证两个或多个模块应用之间的交互。在Google之外,中型测试也称集成测试。一般是由SET来组织运行中型测试。小型测试会尝试走遍单独函数的所有路径,而中型测试的主要目标是验证指定模块之间的交互。

    c)大型测试

    在Google之外,大型测试也称系统测试/端到端测试。大型测试在一个较高层次上运行,验证系统作为一个整体是如何工作的。

    12)测试规模在共享测试平台中的使用

    Google不同的测试项目共享测试平台,有可能同时并发提交到Google测试执行系统的项目有多个。一些测试可能极度消耗资源,使得公用测试机器处于不可用状态。因此,Google测试执行系统利用测试规模的定义,把运行较快的任务从较慢的任务中挑选出来。Google测试执行系统在发现任何测试超时,会把这个测试任务取消并报告这个错误。这迫使工程师提供精准的测试规模标签。

图1 不同测试规模所需的执行时间和资源使用情况

    13)测试规模的益处

    各测试规模的优缺点,见图:

图2 不同测试规模的优缺点

    a)大型测试

    对外部有依赖,非确定性强;测试数据的准备非常耗时;测试失败根源较难定位。

    b)中型测试

    运行速度相对较快;可在标准的开发环境中运行;依赖外部系统有不确定性。

    c)小型测试

    运行速度很快;所有的环境均可运行;测试范围较小,可很容易地做边界场景与错误条件测试;使用mock或fake,可不与真实环境同步。

    Google有许多不同类型的项目,这些项目对测试的需求也不同,小型、中型、大型测试之间的比例随着项目团队的不同而不同。这个比例并不固定,总体上有个经验法则,即70/20/10原则:70%小型测试,20%中型测试,10%小型测试。

    14)测试运行要求

    由于Google的测试执行系统是一个公用环境,因此要求:

    测试之间相互独立,能以任意顺序来执行;

    测试不做任何数据持久化方面的工作,即在测试用例离开测试环境时,要保证测试环境的状态与测试用例开始执行之前的状态一致。

    另外,测试用例要求可“并发”,如果存在两个测试需同一个端口、同一个目录、操作同一张表可能会导致用例失败。

    一个持续集成系统,如果测试失败,为了精确定位哪次代码变更导致测试用例运行失败,可利用依赖分析技术寻找所有可能受影响的模块,针对一个代码变更只运行受影响模块的测试。

    a)对于通用代码库上的变更

图3 通用代码库变更

    此时,所有的测试均需要运行。

    b)对于一个依赖项目上的代码变更

图4 依赖项目的代码变更

只需要运行受影响的模块,即运行buzz_client_tests即可。

    今天到此为止,下篇从测试认证开始读起~

    今天读完的感受是:更清楚了测试规模的意义,重温了自动化中该注意的点,另外,从整体项目的角度,项目流程、修改后的测试方面也得到了新的认识~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容