<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    統計

    留言簿(1)

    DB

    Others

    QA

    Tech Website

    閱讀排行榜

    評論排行榜

    【轉】How Google Tests Software - Part Two

    此文描述了Google在軟件開發中涉及到的幾名角色:
    #SWE(Software Engineer):傳統的軟件開發者,同時也負責寫單元測試
    #SET(Software Engineer in Test):設計單元測試框架,寫自動化測試腳本
    #TE(Test Engineer):從用戶的角度去測試軟件,構建不同的測試場景,自動化測試腳本書寫
    --
    By James Whittaker

    In order for the “you build it, you break it” motto to be real, there are roles beyond the traditional developer that are necessary. Specifically, engineering roles that enable developers to do testing efficiently and effectively have to exist. At Google we have created roles in which some engineers are responsible for making others more productive. These engineers often identify themselves as testers but their actual mission is one of productivity. They exist to make developers more productive and quality is a large part of that productivity. Here's a summary of those roles:
    The SWE or Software Engineer is the traditional developer role. SWEs write functional code that ships to users. They create design documentation, design data structures and overall architecture and spend the vast majority of their time writing and reviewing code. SWEs write a lot of test code including test driven design, unit tests and, as we explain in future posts, participate in the construction of small, medium and large tests. SWEs own quality for everything they touch whether they wrote it, fixed it or modified it.
    The SET or Software Engineer in Test is also a developer role except their focus is on testability. They review designs and look closely at code quality and risk. They refactor code to make it more testable. SETs write unit testing frameworks and automation. They are a partner in the SWE code base but are more concerned with increasing quality and test coverage than adding new features or increasing performance.
    The TE or Test Engineer is the exact reverse of the SET. It is a a role that puts testing first and development second. Many Google TEs spend a good deal of their time writing code in the form of automation scripts and code that drives usage scenarios and even mimics a user. They also organize the testing work of SWEs and SETs, interpret test results and drive test execution, particular in the late stages of a project as the push toward release intensifies. TEs are product experts, quality advisers and analyzers of risk.
    From a quality standpoint, SWEs own features and the quality of those features in isolation. They are responsible for fault tolerant designs, failure recovery, TDD, unit tests and in working with the SET to write tests that exercise the code for their feature.
    SETs are developers that provide testing features. A framework that can isolate newly developed code by simulating its dependencies with stubs, mocks and fakes and submit queues for managing code check-ins. In other words, SETs write code that allows SWEs to test their features. Much of the actual testing is performed by the SWEs, SETs are there to ensure that features are testable and that the SWEs are actively involved in writing test cases.
    Clearly SETs primary focus is on the developer. Individual feature quality is the target and enabling developers to easily test the code they write is the primary focus of the SET. This development focus leaves one large hole which I am sure is already evident to the reader: what about the user?
    User focused testing is the job of the Google TE. Assuming that the SWEs and SETs performed module and feature level testing adequately, the next task is to understand how well this collection of executable code and data works together to satisfy the needs of the user. TEs act as a double-check on the diligence of the developers. Any obvious bugs are an indication that early cycle developer testing was inadequate or sloppy. When such bugs are rare, TEs can turn to their primary task of ensuring that the software runs common user scenarios, is performant and secure, is internationalized and so forth. TEs perform a lot of testing and test coordination tasks among TEs, contract testers, crowd sourced testers, dog fooders, beta users, early adopters. They communicate among all parties the risks inherent in the basic design, feature complexity and failure avoidance methods. Once TEs get engaged, there is no end to their mission.
    Ok, now that the roles are better understood, I'll dig into more details on how we choreograph the work items among them. Until next time...thanks for your interest.

    posted on 2011-06-02 11:00 XXXXXX 閱讀(272) 評論(0)  編輯  收藏 所屬分類: Uncategorized

    主站蜘蛛池模板: 免费看国产一级特黄aa大片| 中文字幕亚洲不卡在线亚瑟| 国产aⅴ无码专区亚洲av| 美女免费视频一区二区| 国产精品极品美女免费观看| 亚洲精品无码不卡在线播放| 精品久久久久久久免费加勒比| 亚洲依依成人亚洲社区| 免费看一级做a爰片久久| 亚洲av无码专区在线电影天堂| 免费人成网站在线播放| 人妖系列免费网站观看| 亚洲精品狼友在线播放| 亚洲视频在线免费观看| 亚洲免费一级视频| 最近最好的中文字幕2019免费| 亚洲精品宾馆在线精品酒店| 四虎影视在线永久免费观看| 黄色视屏在线免费播放| 久久久久亚洲AV成人无码| 67pao强力打造国产免费| 亚洲国产av玩弄放荡人妇 | 免费国产a国产片高清| 精品一区二区三区无码免费直播 | 欧美a级成人网站免费| 亚洲色欲啪啪久久WWW综合网| 免费v片在线观看无遮挡| 精品国产污污免费网站入口| 亚洲AV无码专区国产乱码电影 | 午夜男人一级毛片免费 | 亚洲国产成人精品无码一区二区| 男人的好免费观看在线视频| 思思久久99热免费精品6| 久久精品国产亚洲AV网站 | 在线观看肉片AV网站免费| 亚洲另类春色校园小说| 免费一级毛片正在播放| 热re99久久6国产精品免费| 亚洲精品美女久久久久久久| 亚洲精品无码成人片久久| 国内免费高清在线观看|