• 《构建之法》学习(2)——个人技术和流程


    《构建之法》学习(2)——个人技术和流程

    1.单元测试

          对一个多人合作的软件来说,让自己负责的模块功能定义尽量明确,是至关重要的,而单元测试能稳定、质量地保证模块的质量。

          在写技术模块的规格说明书的时候,要越详细越好,最好各项要求都可以表示为一个单元测试用例。

          虽然繁琐,但是为了不在后期发现更难处理的bug,单元测试是十分必要的。

          验证单元测试好坏的标准:

          单元测试应该在最基本的功能/参数上验证程序的正确性。

          单元测试必须有最熟悉代码的人(代码的作者)来写。

          单元测试过后,机器状态保持不变。

          单元测试要快(一个测试的运行时间是几秒钟,而不是几分钟)

          应该产生可重复,一致的结果。

          独立性

          单元测试应该覆盖所有代码路径

          单元测试应该集成到自动测试的框架中

          单元测试必须和产品代码一起保存和维护

    2.回归测试

          “回归”是指“回归到以前不正常的状态”。

          工程师应该在新版本上运行所有已通过的测试用例,以验证有没有“退化”情况发生。

          回归测试最好要自动化,因为这样就可以对于每一个构建快速运行所有回归测试,以保证尽快发现问题。

          单元测试是回归测试的基础。

          能避免遗漏bug,以及确保bug都已解决。

     

    3.效能分析工具

          效能分析分为两种分析方法,先分析再优化。

          抽样:

          当程序运行时,时不时看一看这个程序运行在哪一个函数内,并记录下来。

          代码注入:

          将检测的代码加入到每一个函数中,这程序的一举一动都被记录在案,程序的各个效能数据都可以被精确地测量。

    4.个人开发流程

    4.1软件工程师的任务清单

          计划

                估计这个任务需要多少时间

          开发

                分析需求

                生成设计文档

                设计复审(和同事审核设计文档)

                代码规范(为目前的开发制定合适的规范)

                具体设计

                具体编码

                代码复审

                测试(包括自测,修改代码,提交修改)

          记录用时

          测试报告

          计算工作量

          事后总结

          提出过程改进计划

    4.2PSP特点

          不局限于某一个软件技术(如编程语言),而是着眼于软件开发的流程,这样开发不同应用的软件工程师可以相互比较。

          不依赖于考试,而主要靠工程是自己手机数据,然后分析,提高。

          PSP依赖于数据,需要工程师输入数据,记录工程师的各项活动,再加上数据不准确或者有遗失。

          PSP的目的记录工程师如何实现需求的效率,而不是记录顾客对产品的满意度。

  • 相关阅读:
    visual studio 注释与取消注释
    visual studio错误之 无法将参数 1 从“const char [5]”转换为“char *”
    sdl_ffmpeg_video
    sdl_ffmpeg_audio
    visual studio添加第三方库文件,每次都要配置包含目录和库目录(繁琐),一劳永逸的办法
    visual studio 错误之errorC2362:“gototmpstr”跳过了“XXXX”的初始化操作
    visual studio调用SDL2和ffmpeg
    没用过得库函数
    visual studio编译错误之xx被声明为已否决
    vim把一个文件的若干行追加到另一个文件
  • 原文地址:https://www.cnblogs.com/Yan1970/p/6711239.html
Copyright © 2020-2023  润新知