zoukankan      html  css  js  c++  java
  • 2017-2018-1 20179226 《构建之法》第2周学习总结

    教材学习内容总结

    2.1 单元测试

    • 单元测试:能让自己负责的模块功能定义尽量明确,模块内部的改变不会影响其他模块,而且模块的质量能得到稳定的、量化的保证。
    • 单元测试主要步骤
      1.设置数据(一个假想的正确的E-mail地址)
      2.使用被测试类型的功能(用E-mail地址来创建一个User类的实体)
      3.比较实际结果和预期的结果(Assert.IsTure(target != null);)
    • 回归测试:工程师们在新版本上运行所有已通过的测试用例,以验证有没有“退化”情况发生(例如:在3.1.5版本,模块A的编号为125的测试用例通过了,但是在新的版本3.1.6上,却失败了,这就是一个倒退),这个过程就是回归测试。

    2.2 效能分析工具

    • 有抽样和代码注入两种分析方法,一般的做法是先用抽样的方法找到效能瓶颈所在,然后对待定的模块用代码注入的方法进行详细分析。
      1.抽样:具有不需要改动程序,运行较快,很快找到瓶颈,但是不能得到精确的数据,也不能准确表示代码中的调用关系树等特点。
      2.代码注入:具有可以精确测量程序中各个数据,但是运行时间大大加长,还会产生很大的数据文件,增加了数据分析的时间。

    2.3 个人开发流程

    • 计划→开发→记录用时→测试报告→计算工作量→事后总结→提出过程改进计划

    2.4实践

    • 单一职责原则:一个模块应该只有一个导致它变化的原因,一个模块应该完全对某个功能负责。
    • 开放-封闭原则:软件实体应该是可以扩展的,同时是不可修改的。
    • 简单的程序从几个维度逐步扩展,增加复杂度
      1.从数据方面扩展
      2.从需求方面扩展
      3.从用户方面扩展
      4.从软件构件方面扩展

    教材学习中的问题和解决过程

  • 相关阅读:
    Lucene教程
    ElasticSearch安装
    MySQL事务
    Java泛型
    Python学习笔记(1)
    @keyframs实现图片gif效果
    glup简单应用---gulpfile.js
    巧用CSS3伪类选择器自定义checkbox和radio的样式
    get传中文参数乱码解决方法
    自定义样式 实现文件控件input[type='file']
  • 原文地址:https://www.cnblogs.com/9226ryf/p/7987685.html
Copyright © 2011-2022 走看看