我们小组于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. XML的学习

    XML是可扩展标记语言德意思,它和HTML一样都是标记语言(标签语言),不同之处在于XML可拓展,何为可拓展?在HTML中每个标签都有其特定的含义,我们不可以随便写一个标签并赋予其意义,而XML中就可 ...

  2. 10g RAC常用开启关闭命令 – SRVCTL用法

    10G RAC: srvctl 1. Grammar: srvctl <command> <object> [<options]] available <comma ...

  3. buffer cache 深度解析

    本文首先详细介绍了oracle中buffer cache的概念以及所包含的内存结构.然后结合各个后台进程(包括DBWRn.CKPT.LGWR等)深入介绍了oracle对于buffer cache的管理 ...

  4. Oracle 10g RAC TAF

    Oracle RAC 同时具备HA(High Availiablity) 和LB(LoadBalance). 而其高可用性的基础就是Failover(故障转移). 它指集群中任何一个节点的故障都不会影 ...

  5. IDA Pro 权威指南学习笔记(十三) - 基本代码转换

    IDA提供的代码转换包括: 1.将数据转换为代码 2.将代码转换为数据 3.指定一个指令序列为函数 4.更改现有函数的起始或结束地址 5.更改指令操作数的显示格式 代码显示选项 通过 Options ...

  6. ISIS与OSPF的区别与联系

    共同之处: 1 都是链路状态路由协议,都要求区域内的路由器交换链路状态信息,链路状态信息被收集到链路状态数据库中 2 都是用了一种实现路由选择信息交换相似机制 3 都在广播网络中选择指定路由器来控制扩 ...

  7. 咱妈说别乱点链接之浅谈CSRF攻击

    平时经常听到人们说别乱点链接,小心有病毒.还有长辈们转发的“天呐~XXX的阴谋,全是病毒”.“XXX惊天大病毒,点了苹果手机就要爆炸!”.“现在转发热门连接会乱扣费!千万别点!”. 到底长辈们说的这些 ...

  8. 重写iframe内联框架中的内容

    重写iframe内联框架中的内容,不使用src指向页面url,主动写入HTML代码: var ifr = document.getElementById("CMBC-certificatio ...

  9. **三元运算和lambda

    三元运算 在说三元运算之前,我们看一段代码: a = 1 if a == 1: name = 'Hello' else: name = 'World' print(name) 输出:Hello 对于这 ...

  10. Angularjs Ng_repeat中实现复选框选中并显示不同的样式

    最近做了一个选择标签的功能,把一些标签展示给用户,用户选择自己喜欢的标签,就类似我们在购物网站看到的那种过滤标签似的: 简单的效果如图所示: 首先看一下html代码: 1 <!DOCTYPE h ...