我们小组于12月11日在东九教学楼召开了会议,小组第二次会议中就讨论了被测系统中风险最高的模块,于是选择管理员的教师添加模块,针对代码展开静态评审。这一次会议,小组主要讨论了应该从哪些方面来测评代码的规范,小组决定从代码的风格规范和代码的设计规范以及代码的效能、可读性和可测试性进行测评,并写出文档进行记录和总结。

好吧,我在拍照,不在图片内。

这次会议中,我们小组就代码风格规范、代码设计规范、代码效能、代码可读和可测试性进行讨论。

代码风格规范包括:

缩进、 行宽、  括号、   断行与空白的{}行、分行、命名、下划线问题、  大小写问题、  注释。

其实之前一直觉得读软件应该学编程,对测试课程有点抵触,但认真学习发现,其实学测试对开发很有帮助,比如代码风格这几点,虽然平时老师有强调,但自己并没有放在心上,但是做了测试发现好的注释,好的编程习惯,确实能够减少错误的发生。

代码的设计规范需要注意的就更多了,

1)       是否遵从已知的设计模式或项目中常用的模式:该项目使用了javaweb基本框架,使用了JSP+Serlet+Javabean的MVC设计模式,JSP作为视图,来表现页面;Servlet作为控制器,控制程序的流程并调用业务进行处理;JavaBean封装了业务逻辑。

2)       有没有硬编码或者字符串/数字等存在:该代码中没有硬编码,但是有字符串的存在。但是不影响使用功能。

3)       代码有没有依赖于某一平台,是否会影响将来的移植(win32到win64):该代码不支持从32位移动到64位,但是由于是JAVA写的,所以不依赖于某一平台。

4)       在本项目中是否存在类似的功能可以调用而不用全部重新实现:在教室添加模块上每个函数都有自己的功能,所以每个函数都必须实现。

5)       有没有无用的代码可以清除:该代码中有一些注释掉的代码可以删除。

6)       有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常:该代码并没有对错误的处理,若添加教师错误则直接会报404的错误但无相应处理。对于外部函数则处理了异常。

7)       参数传递有无错误,字符串的长度是字节的长度还是字符(可能是单/双字节)的长度,是以0开始计数还是以1开始计数:代码的字符串长度以字节长度并且从0开始计数。

此外,还有代码的效能,这一点相较之前两点可能就让人比较陌生了。

代码的效能如何其实说白了就是,该代码的效能现在处于可控状态,不会轻易的崩溃或者出现bug,最坏的情况是用户使用不当程序崩溃。

在我们检测的教师模块部分,我们重点放在了循环结构,因为上课武老师讲过,循环那可以让时间指数级增加,我们就重点检查代码中,特别是循环中是否有明显可优化的部分:代码中的循环都为for语句,无明显可优化的的地方。

然后,对于系统和网络调用是否会超时?如何处理:该代码在登录系统时可能无法响应,在添加教师信息时无明显超市,暂时无解决方法。

关于系统可读性,之前注释较少,我们组在关键处增加了注释。

实践作业3:白盒测试----第三次小组会DAY8的更多相关文章

  1. 假期实践作业:从IT角度看地铁

    实习时间:2016/02/23——2016/02/26 实习地点:京港地铁14号线 实习报告: 大学四年过得真快,转眼就大三了,大学前两年半的生活可谓多姿多彩,从不懂计算机到对编程感兴趣,期待得最多的 ...

  2. 实践作业4:Web测试实践(小组作业)每日任务记录2

    实践作业4:Web测试实践(小组作业)每日任务记录2 会议时间:2017年12月22日 会议地点:东九教学楼自习区 主  持  人:王晨懿 参会人员:王晨懿.余晨晨.郑锦波.杨潇.侯欢.汪元 记  录 ...

  3. 《程序设计语言——实践之路(英文第三版)》【PDF】下载

    <程序设计语言--实践之路(英文第三版)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382234 内容简介 <程序设计语 ...

  4. 【原创 深度学习与TensorFlow 动手实践系列 - 3】第三课:卷积神经网络 - 基础篇

    [原创 深度学习与TensorFlow 动手实践系列 - 3]第三课:卷积神经网络 - 基础篇 提纲: 1. 链式反向梯度传到 2. 卷积神经网络 - 卷积层 3. 卷积神经网络 - 功能层 4. 实 ...

  5. c++ 第五次作业(计算器第三步)

    第五次作业 (计算器第三步) 项目源文件地址:calculator 本次作业改进情况 加入多种读入选择 正常输出答案 -a 选项,输出表达式以及值 -f 选项,从指定文件读入,并把答案输出到指定文件 ...

  6. “希希敬敬对”队软件工程第九次作业-beta冲刺第三次随笔

    “希希敬敬对”队软件工程第九次作业-beta冲刺第三次随笔 队名:  “希希敬敬对” 龙江腾(队长) 201810775001 杨希                   201810812008 何敬 ...

  7. 《Metasploit魔鬼训练营》第一章实践作业

    <Metasploit魔鬼训练营>第一章实践作业 1.搜集Samba服务usermap_script安全漏洞的相关信息,画出该安全漏洞的生命周期图,标注各个重要事件点的日期,并提供详细描述 ...

  8. 实践作业3:白盒测试----findbugs介绍及使用DAY7

    本小组选择的是一个开源的Java静态代码分析工具----Findbugs. 与其他静态分析工具(如Checkstyle和PMD)不同,FindBugs 不注重样式或者格式,它专注于寻找真正的缺陷或者潜 ...

  9. 实践作业3:白盒测试----总结与反思DAY12.

    ---恢复内容开始--- 阶段一:熟悉白盒测试方法 负责人:刘思佳 工作质量评价:用例设计详细,考虑到白盒测试基于代码,所以尽可能地覆盖更多的白盒测试方法,对系统可能存在的缺陷就更容易了解.对管理员和 ...

随机推荐

  1. java代码---I/O文件内容复制

    总结:主要是弄清输入流,输出流 输入流和输出流都是针对程序而言,把文件内容读取到程序是输入流 从程序把内容写入文件是输出流 package com.a.b; import java.io.*; imp ...

  2. 【学徒日记】Unity 动画调用事件

    http://note.youdao.com/noteshare?id=a15f965fc57a0b25c87ee09388cf0f4a 具体内容看上面的链接. 1. 在脚本里写一个函数,它的参数只能 ...

  3. MySQL5.7.18,初始化完成登录,提示密码过

    初始化完成登录,提示密码过期 原因: 安装CentOs的时候,默认安装了mysql,并且版本与自己安装的mysql版本不一致,直接使用mysql -uroot -p'password'连接,默认调用的 ...

  4. 匿名方法,lambad表达式,匿名类

    其实lambad表达式就是“函数”或者说是“方法”写法的一个进化,越来越简化而已,如数学方法里的f(X). 匿名方法:顾名思义,匿名方法就是没有名称的方法,但是有定义参数. 匿名方法最明显的好处就是可 ...

  5. 开启 3389 的 cmd 命令

    方法一: 测试环境 Windows 2003 server 查看开启的端口 没有开启 3389 端口 执行语句 wmic RDTOGGLE WHERE ServerName='%COMPUTERNAM ...

  6. 根据段落编号自动添加书签的VBA

    Sub 宏1() ' ' 宏1 宏 ' '    Dim myRange As Word.Range Dim num As String, content As String Selection.Ho ...

  7. mysql 理解索引,添加索引,使用索引(哪些情况会导致索引失效)

    索引用于快速找出在某个列中有一特定值的行.不使用索引,MySQL必须从第1条记录开始然后读完整个表直到找出相关的行,还需要考虑每次读入数据页的IO开销.而如果采取索引,则可以根据索引指向的页以及记录在 ...

  8. activity与service进程内通信

    package com.example.binbin.testbinder; import android.app.Service; import android.content.Intent; im ...

  9. 一个简单的语义分析算法:单步算法——Python实现

    以前 曾经有一个人教会我一件事 要学会相信一些看似不可能的事  当你真的相信的时候  或许 没有什么事情是不可能的 ——<秦时明月•与子同归> 在编译原理的众多书籍中,陈述了很多生成语法树 ...

  10. JSP页面中的时间显示问题

    在JSP页面中往往要将时间显示为指定格式的,如果传入的是Date类型很好解决 <fmt:formatDate value="${orderTime}" pattern=&qu ...