软件工程_6th weeks
一、上次博客时说的UI,拖拉到现在才展示,完成了“登录,普通匹配,做题界面,做题结果”四项 功能:




二、单元测试工具
1、python单元测试工具
最近因为论文原因一直在用Python,Python有很多的单元测试框架和工具,主要说一下unittest(又叫做PyUnit):作为标准python中的一个模块,是其它框架和工具的基础。unittest中的4个重要的概念:test fixture, test case, test suite, test runner,关系和如何工作的如下静态图:

一个TestCase就是一个测试用例,多个测试用例结合在一起就是一个TestSuite,TestLoader是用来加载TestCase到TestSuite中的,TextTestRunner是来执行测试用例的,测试的结果会保存到TextTestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息。整个流程就是首先是要写好TestCase,然后由TestLoader加载TestCase到TestSuite,然后由TextTestRunner来运行TestSuite,运行的结果保存在TextTestResult中。
2、java单元测试工具
java单元测试工具种类很多,现对几个进行对比:
2.1 JTEST
2.1.1 简介
jtest是一款针对java语言的自动化白盒测试工具,它通过自动实现java的单元测试和代码标准校验,来提高代码的可靠性。Jtest先分析每个java类,然后自动生成junit测试用例并执行用例,从而实现代码的最大覆盖,并将代码运行时未处理的异常暴露出来;另外,它还可以检查以DbC(Design by Contract)规范开发的代码的正确性。
2.1.2 优势
使预防代码错误成为可能,从而大大节约成本,提高软件质量和开发效率;使单元测试——包括白盒、黑盒以及回归测试成为可能;使代码规范检查和自动纠正成为可能;鼓励开发团队横向协作来预防代码错误。
2.1.3 特点
通过简单的点击,自动实现代码基本错误的预防,这包括单元测试和代码规范的检查;生成并执行junit单元测试用例,对代码进行即时检查;提供了进行黑盒测试、模型测试和系统测试的快速途径;确认并阻止代码中不可捕获的异常、函数错误、内存泄漏、性能问题、安全弱点的问题。
2.1.4 价格
昂贵
2.2 JMETER
2.2.1 简介
JMeter是Apache组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现。使用JMeter进行性能测试。
2.2 特征
JMeter可以用于测试静态或者动态资源的性能(文件、Servlets、Perl脚本、java对象、数据库和查询、ftp服务器或者其他的资源)。JMeter用于模拟在服务器、网络或者其他对象上附加高负载以测试他们提供服务的受压能力,或者分析他们提供的服务在不同负载条件下的总性能情况。你可以用JMeter提供的图形化界面分析性能指标或者在高负载情况下测试服务器/脚本/对象的行为。
2.3 JUNIT
2.3.1 简介
JUnit是一个开源的java测试框架,它是Xuint测试体系架构的一种实现。在JUnit单元测试框架的设计时,设定了三个总体目标,第一个是简化测试的编写,这种简化包括测试框架的学习和实际测试单元的编写;第二个是使测试单元保持持久性;第三个则是可以利用既有的测试来编写相关的测试。
2.3.2 优势
Junit是完全free的;使用方便,撰写测试很简单;JUnit测试检验其结果并提供立即的回馈;JUnit测试可以合成一个测试系列的层级架构
2.3.4 价格
免费
三、PSP
| Data | START_TIME | END_TIME | EVENT | TOTAL | ||||
| 4.10 | 19:00 | 19:15 | 站立会议 | 15min | ||||
| 4.11 | 9:00 | 11:00 | 论文 | QQ10min | Chat20min | 120min | ||
| 14:00 | 15:00 | 代码 | 讨论20min | 60min | ||||
| 15:30 | 15:50 | 站立会议 | 20min | |||||
| 18:00 | 19:30 | 软件工程课后作业查询 | 询问20min | 90min | ||||
| 4.12 | 9:00 | 11:20 | paper数据处理 | 140min | ||||
| 17:30 | 17:35 | 站立会议 | 5min | |||||
| 4.13 | 9:00 | 11:00 | 代码 | 音乐 50min | 120min | |||
| 8:30 | 9:40 | 博客 | 70min |
{K%HUAV2`}3N_43%EVJ2.png)
{K%HUAV2`}3N_43%EVJ2.png)
{K%HUAV2`}3N_43%EVJ2.png)
{K%HUAV2`}3N_43%EVJ2.png)
软件工程_6th weeks的更多相关文章
- 软件工程_1st weeks
本周为软件工程课的第一周,本周主要完成了三个工作:了解了github并使用.拜读了<构建之法>并开通了博客以及完成了四则运算的代码实现. 对于第一项工作github的安装和使用,花费了5个 ...
- 软件工程_10th weeks
不管是什么原因,都没有在周三24:00前发布博客,赶紧用行动补上~ psp DATE START_TIME END_TIME EVENT TYPE DELTA 5.8 9:00 12:00 论 ...
- 软件工程_9th weeks
PSP DATE START_TIME END_TIME EVENT TYPE TIME 4.30-5.3 5:30 4:00 旅游 娱乐 72h 5.3 14:00 17:0 ...
- 软件工程_8th weeks
第八周PSP 个人时间管理 由于本周主要在做论文实验,除了学习时间外有一些零散的时间也在思考代码的书写以及论文实验的流程,但是这些零散的时间并没有在总的表记录,所以想问一下老师,像这种平时零散思考的时 ...
- 软件工程_7th weeks
内聚和耦合(学习笔记) 一.内聚 内聚是一个模块内部各成分之间相关联程度的度量.把内聚按紧密程度从低到高排列次序为: 1.偶然内聚:指一个模块内各成分为完成一组功能而组合在一起,它们相互之间即使有关系 ...
- 软件工程_5th weeks
从周五开始经历了清明小长假,周六.周日和周一都处于假期状态,因此对于上篇博客的评论回复的很迟,而这周的工作做的也不多. 1.爆打小组 4.5日站立会议 时间:2016.4.5 15:00-15:34 ...
- 软件工程_4th weeks
本周要进行阿尔法版本的发布,因此我们做了一些代码和测试方面的工作.当然了下了课后第一件事还是巩固课上讲的知识,比如MVP.四象限.看了演讲<最后一课>等. 一.结对编程 本周的结对编程继续 ...
- 软件工程_3rd weeks
本周上课的第一件事就是四人组队做工程,因为之前没有太多的准备,所以过程有些仓促,只是最后的结果是好的.有了自己的队伍和课题.感觉就应该这样,平时的我们比较随意,没有一丝的紧迫感,这样会督促着我们完成任 ...
- 软件工程_2nd weeks
本周上课没有板书,都由老师口头叙述 因此有的笔记记得不是很全,幸好有郑蕊师姐发布的课堂笔记,很好的梳理上课的内容~ 1.根据老师上课给的建议,进行了深刻的思考和反思 1.1 作为一个学硕研究生,这门课 ...
随机推荐
- ORA-600 [Kcbz_check_objd_typ_1] Running a Job (Doc ID 785899.1)
ORA-600 [Kcbz_check_objd_typ_1] Running a Job (Doc ID 785899.1) To Bottom In this Document Symptom ...
- Zookeeper简介与集群搭建
Zookeeper简介 Zookeeper是一个高效的分布式协调服务,可以提供配置信息管理.命名.分布式同步.集群管理.数据库切换等服务.它不适合用来存储大量信息,可以用来存储一些配置.发布与订阅等少 ...
- PAT A1139 First Contact (30 分)——set
Unlike in nowadays, the way that boys and girls expressing their feelings of love was quite subtle i ...
- 错误:java.io.FileNotFoundException: /storage/emulated/0/Documents/eclipse-inst-win64.exe
在Android服务的最佳实例中:https://www.cnblogs.com/hh8888-log/p/10300972.html,在最后运行的时候,点击Start Download按钮总是会报一 ...
- maven 基础
maven安装链接 maven基础命令: 编译命令:mvn compile 测试命令:mvn test 清空命令:mvn clean 打包命令:mvn package 打包命令:mvn install ...
- python wsgi 简介
wsgi全称是"Web Server Gateway Interfacfe",web服务器网关接口,wsgi在python2.5中加入,是web服务器和web应用的标准接口,任何实 ...
- odoo仓库单据产品过滤写法
def onchange_picking_type_id(self, cr, uid,ids, picking_type_id, context=None): if picking_type_id i ...
- Luogu1084 NOIP2012D2T3 疫情控制 二分答案、搜索、贪心、倍增
题目传送门 题意太长就不给了 发现答案具有单调性(额外的时间不会对答案造成影响),故考虑二分答案. 贪心地想,在二分了一个时间之后,军队尽量往上走更好.所以我们预处理倍增数组,在二分时间之后通过倍增看 ...
- HNOI2019 白兔之舞 dance
HNOI2019 白兔之舞 dance 显然\(n=3\)就是\(n=1\)的扩展版本,先来看看\(n=1\)怎么做. 令\(W=w[1][1]\),显然答案是:\(ans_t=\sum_{i\mod ...
- [JDBC]ORA-01000: 超出打开游标的最大数(ORA-01000: maximum open cursors exceeded)
问题产生的原因: Java代码在执行conn.createStatement()和conn.prepareStatement()的时候,相当于在数据库中打开了一个cursor.由于oracle对打开的 ...