模块测试

项目开发文档模板

谁说胖子不能爱 提交于 2020-01-14 08:48:05
1 引言 1.1 编写目的:阐明编写详细设计说明书的目的,指明读者对象。 1.2 项目背景:应包括项目的来源和主管部门等。 1.3 定义:列出本文档中所用到的专门术语的定义和缩写词的愿意。 1.4 参考资料:   ● 列出有关资料的作者、标题、编号、发表日期、出版单位或资料来源   ●项目经核准的计划任务书、合同或上级机关的批文;项目开发计划;需求规格说明书;概要设计说明书;测试计划(初稿);用户操作手册   ● 文档所引用的资料、软件开发的标准或规范。 2 总体设计 2.1 需求概述 2.2 软件结构:如给出软件系统的结构图。 3 程序描述 3.1 逐个模块给出以下说明:   ● 功能   ● 性能   ● 输入项目   ● 输出项目 3.2 算法:模块所选用的算法。 3.3 程序逻辑:详细描述模块实现的算法,可采用:标准流程图;pdl语言;n-s图;判定表等描述算法的图表。 3.4 接口   ● 存储分配   ● 限制条件 3.5测试要点:给出测试模块的主要测试要求。 来源: https://www.cnblogs.com/zijinguang/archive/2008/10/23/1318008.html

python 3.8 unittest

懵懂的女人 提交于 2020-01-11 01:05:13
基本实例 unittest 模块提供了一系列创建和运行测试的工具。这一段落演示了这些工具的一小部分,但也足以满足大部分用户的需求。 这是一段简短的代码,来测试三种字符串方法: import unittest class TestStringMethods(unittest.TestCase): def test_upper(self): self.assertEqual('foo'.upper(), 'FOO') def test_isupper(self): self.assertTrue('FOO'.isupper()) self.assertFalse('Foo'.isupper()) def test_split(self): s = 'hello world' self.assertEqual(s.split(), ['hello', 'world']) # check that s.split fails when the separator is not a string with self.assertRaises(TypeError): s.split(2) if __name__ == '__main__': unittest.main() 继承 unittest.TestCase 就创建了一个测试样例。上述三个独立的测试是三个类的方法,这些方法的命名都以

Spring学习总结——Spring概念详解

蹲街弑〆低调 提交于 2020-01-10 07:37:37
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式) 轻量级开源框架。你可能正在想“Spring不过是另外一个的framework”。当已经有许多开放源代码(和专有)J2EEframework时,我们为什么还需要Spring Framework?Spring是独特的,因为若干个原因:它定位的领域是许多其他流行的framework没有的。Spring致力于提供一种方法管理你的业务对象。Spring是全面的和模块化的。Spring有分层的体系结构,这意味着你能选择使用它孤立的任何部分,它的架构仍然是内在稳定的。因此从你的学习中,你可得到最大的价值。例如,你可能选择仅仅使用Spring来简单化JDBC的使用,或用来管理所有的业务对象。它的设计从底部帮助你编写易于测试的代码。Spring是用于测试驱动工程的理想的framework。Spring对你的工程来说,它不需要一个以上的framework。Spring是潜在地一站式解决方案,定位于与典型应用相关的大部分基础结构。它也涉及到其他framework没有考虑到的内容。 背景 Rod Johnson在2002年编著的《Expert one on one J2EE design and

一个完整的信号采集系统项目开发流程

不打扰是莪最后的温柔 提交于 2020-01-08 04:04:44
一. 摘要 这篇文章详细介绍了一个“多路信号采集系统”的开发过程。“多路信号采集系统”是一个可伸缩的信号采集系统,通道可以选择从0~100路不同的信号源。单个采集板都能够采集10路数据,用户可以根据自己的需求方便地扩展或者收缩信号通道数。本系统可以用于常见的民用或者工业现场监控、仪器仪表等数据采集场合。该系统基于Arm Context M3内核处理器实现,有基板和采集板两大部分组成,基板主要负责整个采集时序的控制,而采集板则完成真是的数据采集并将采集到的数据发送到数据总线,进而传输到主机端。数据传输采用了串口通信的方式(RS485),并采用Modbus协议实现,从而方便地实现了采集板地址的检索、数据量控制、以及CRC校验值确定等功能。软件系统则采用了固件库编程的方式,全程开发均使用C语言完成,从而为以后升级做好准备。开发使用了今日标企业工作平台以及Github代码托管平台相结合完成开发的方式,使用今日标企业工作平台管理项目开发流程,而使用Github则方便地实现了不同地区开发者协作开发的目的。而系统调试则选择了传统的调试方式,先进行单个功能模块测试,再测试系统功能,进而Burning实验。 二. 本文提纲 1. 摘要 2. 本文提纲 3. 项目起始 4. 开发方式选择 5. 系统构架 6. 硬件设计 7. 软件设计 8. 系统调试 9. 总结 三. 项目起始

Maven基础

落爺英雄遲暮 提交于 2020-01-07 22:08:29
Maven基础 Web项目开发理论 视图层:直接负责Web页面的表现 控制层:控制页面表现 持久化层:与数据库和存储交互 目前开发所存在的问题 一个项目就是一个工程 如果一个项目非常庞大,就不再适合使用package划分模块,最好每一个模块对应一个工程,利于分工协作。 而 借助于maven,就可以将一个项目拆分为多个 项目中需要的jar包必须手动复制粘贴到WEB-INF/lib目录下 带来的问题是,同样的jar包文件重复出现在不同的工程中。一方面浪费存储,另一方面也使得工程更加臃肿 借助maven,可以将jar包仅仅保存在仓库中,有需要的话引用即可,不需要真的复制 jar包需要别人替我们准备好或到各自的官网下载 下载很麻烦,或者有些官网就是通过maven或者SVN提供下载的,不直接提供jar包 借助于maven,我们可以使用一种统一的、正式的方式下载资源,也保证了内容的可靠性 一个jar包依赖的其他jar包需要自己手动加入项目 maven会自动将依赖的所有jar包导入 概念 Maven是一款服务于java平台的自动化构建工具 Make->Ant->Maven->Gradle(确实比maven好用,之后可以自学试一试) 构建:以java源文件、框架配置文件、JSP、HTML、图片等资源为原材料,去生成一个运行的项目的过程 tips,对于运行时环境,例如JRE,我们的项目中并不会包括

如何评测软件工程知识技能水平?

最后都变了- 提交于 2020-01-07 14:11:19
软件工程知识技能水平高低的主要体现方面 1. 开发语言:至少熟练掌握一门编程语言 2. 数据结构与算法:算法是软件工程师的重点知识结构,算法的掌握情况往往能够决定软件工程师的成长高度 3. 开发环境:熟练掌握Windows、Linux等大型主流操作系统的操作,熟练掌握编程环境配置与软件环境部署 4. 软件开发流程: 熟悉掌握瀑布模型、敏捷开发等软件工程开发的流程。了解软件开发各周期或阶段的目标以及作用。了解软件开发的一些原则技术及方法 5. 团队协作能力:队员间在各个开发环节需要沟通协作 软件工程知识技能水平测评试题 一.选择题(共40分,一题4分) 1. 软件生命周期一般包括三个时期:软件定义期、软件开发期和软件运行期。下述( )不是软件开发期所应包含的活动。 A. 可行性分析 B. 需求获取和需求建模 C. 软件体系结构设计和数据设计 D. 软件集成与系统测试 答案:D 软件开发期所应包含的活动有:可行性分析、需求获取和需求建模和软件体系结构设计和数据设计。 2. “软件危机”是指( ) A. 大众不适应软件的使用 B. 软件开发相关人才过少 C. 软件开发和维护中出现的一系列问题 D. 大量黑客出现 解析:C 软件危机指的是随着软件规模不断扩大而产生的一系列开发与维护的难题 3. 下列哪个不是瀑布模型的优点( ) A. 项目提供了按阶段划分的检查点 B. 当前一阶段完成后

高软测试

帅比萌擦擦* 提交于 2020-01-07 07:47:47
一、 选择题( 1 题 3 分,共 30 分) 1、 在键盘上与字母 A 处于同一行的键是( C ) A 、 M B 、 U C 、 ‘ D 、 R 2、 软件工程的出现主要是由于( C ) A、 程序设计方法学的出现 B 、其他工程科学的影响 C 、软件危机的出现 D 、计算机的发展 3、 适合与面向对象方法的软件生命周期模型是( B ) A 、瀑布模型 B 、喷泉模型 C 、螺旋模型 D 、增量模型 4、 结构化瀑布模型的生命周期中,哪一个环节出错,对软件影响最大( C ) A、 详细设计阶段 B 、概要设计阶段 C 、需求分析阶段 D 、编码阶段 5、 模块化内聚性最高的是( D ) A 、逻辑内聚 B 、偶然内聚 C 、数据内聚 D 、功能内聚 6、 软件测试的目的是( B ) A、 评价软件质量 B 、发现软件错误 C 、找出软件所有错误 D 、证明软件是正确的 7、 对象实现的数据与操作的 ( B ) ,外部 不可见。 A 、结合 B 、封装 C 、隐藏 D 、抽象 8、 软件结构图中,各模块之间若有直线连接,表示有( B )联系。 A 、继承 B 、调用 C 、组成 D 、链接 9、 为了 有效的提高软件的可维护性 ,应该( A ) A、 养成好的程序设计风格 B 、注意模块的独立性 C 、注意使用文档 D 、保存测试文件与用例 二、 填空题 ( 1 空 1 分,共

这26个为什么,让初学者理解Python更简单!

柔情痞子 提交于 2020-01-07 04:13:50
为什么Python使用缩进来分组语句? 为什么简单的算术运算得到奇怪的结果? 为什么浮点计算不准确? 为什么Python字符串是不可变的? 为什么必须在方法定义和调用中显式使用“self”? 为什么不能在表达式中赋值? 为什么Python对某些功能(例如list.index())使用方法来实现,而其他功能(例如len(List))使用函数实现? 为什么 join()是一个字符串方法而不是列表或元组方法? 异常有多快? 为什么Python中没有switch或case语句? 难道不能在解释器中模拟线程,而非得依赖特定于操作系统的线程实现吗? 为什么lambda表达式不能包含语句? 可以将Python编译为机器代码,C或其他语言吗? Python如何管理内存? 为什么CPython不使用更传统的垃圾回收方案? CPython退出时为什么不释放所有内存? 为什么有单独的元组和列表数据类型? 列表是如何在CPython中实现的? 字典是如何在CPython中实现的? 为什么字典key必须是不可变的? 为什么 list.sort() 没有返回排序列表? 如何在Python中指定和实施接口规范? 为什么没有goto? 为什么原始字符串(r-strings)不能以反斜杠结尾? 为什么Python没有属性赋值的“with”语句? 为什么 if/while/def/class语句需要冒号?

使用 Python 中 re 模块对测试用例参数化,进行搜索 search、替换 sub

天大地大妈咪最大 提交于 2020-01-06 21:17:52
  参数化的目的:运行自动化测试用例的时候参数都不需要改变,直接使用封装好的类进行参数化,发起请求时直接使用替换后参数;   自动化测试用例,如果一百个接口要在Excel写100个sheet表单,每个接口有10个字段,里面有5个都可能是变化的,需要使用参数化,先试用特定的字符在用例中进行站位,在发起请求构造参数时在进行替换占位符;----------我们可以每个接口分别创建一个参数化; 一、用力中手机号的替换,以字符串中的方法,使用 replace (译:瑞破类似) 进行替换 # 原始字符串:{"mobilephone": "${not_existed_tel}", "pwd":"123456"} # json 字符串 src_str = '{"mobilephone": "${not_existed_tel}", "pwd":"123456"}' # 替换 json 字符串中 ${not_existed_tel} 为 18845820369 print(src_str.replace("${not_existed_tel}", "18845820369")) # 结果:{"mobilephone": "18845820369", "pwd":"123456"} 二、使用 re 模块进行替换   re 正则表达式,是一个查找、搜索、替换文本的一种格式语言 搜索方法一,re 模块中的

如何评测软件工程知识技能水平?

夙愿已清 提交于 2020-01-06 14:44:39
软件工程师英文是Software Engineer,是从事软件职业的人员的一种职业能力的认证,通过它说明具备了工程师的资格。软件工程师是从事软件开发相关工作的人员的统称。 它是一个广义的概念,包括软件设计人员、软件架构人员、软件工程管理人员、程序员等一系列岗位,工作内容都与软件开发生产相关。软件工程师的技术要求是比较全面的,除了最基础的编程语言(C语言/C++/JAVA等)、数据库技术(SQL/ORACLE/DB2等)等,还有诸多如JAVASCRIPT、AJAX、HIBERNATE、SPRING等前沿技术。此外,关于网络工程和软件测试的其他技术也要有所涉猎。 软件工程师的软件工程知识技能水平高低主要体现 软件工程师虽然不能算是一个新生事物,但随着社会的不断发展,计算机是我们必不可少的,软件开发也是推动计算机迅速发展的条件,那么做为软件工程师我们需要什么条件? (1)具有扎实的计算机专业知识 这是软件工程理由能够从事软件一切工作最基本的前提,是软件工程最基本的素质,这要求软件工程师必须精通高等数学、离散数学、电子学、编程语言、数据结构等课程。 (2)良好的语言表达能力和沟通能力 这是软件工程师应该具备的一个很重要的素质,因为软件工程师是为用户开发软件,常常需要直执着面对用户。 (3)健康的心理素质 开发软件本身就是一项艰苦的脑力和体力劳动,软件工程师开发成功一个软件,要经过反复修改