模块测试

GANFuzz:A GAN-based industrial network protocol fuzzing framework

烂漫一生 提交于 2020-02-04 19:03:56
GANFuzz:A GAN-based industrial network protocol fuzzing framework 1.简介 1.GANFuzz,提出了一种新的测试用例生成方法,并在此基础上构建了一个模糊框架。 2.为了提高代码覆盖率和测试深度,提出了三种从不同维度对协议消息进行分类的聚类策略,利用这三种策略,所学习的生成模型可以生成更为多样化和格式良好的测试用例。 3.在实验中,使用GANFuzz原型测试了几个Modbus-TCP模拟器,成功地揭示了一些新的缺陷和已知的问题。 2.背景知识 GAN RNN作为generator CNN作为discriminator 3.方法 3.1 步骤 1.对msg进行聚类。在给定一个真实的协议msg集作为训练数据的情况下,我们采用三种聚类策略来提供三种方法来对数据进行分类。对于每一种策略,我们所关注的特征和功能w.r.t协议消息是不同的。它允许我们从不同的维度进行模糊处理。它有助于提高代码覆盖率和测试深度。 2.学习协议语法。我们使用生成对抗网络和SeqGan算法对将协议语法学习问题进行建模为估计生成模型的过程。通过深度学习训练,生成模型从真实的协议消息中自动揭示协议语法。 3.生成测试用例。学习的生成模型能够生成类似于真实协议消息的序列。利用生成模型可以生成模糊测试用例。 3.2 聚类msg NoClustering

logging 模块

萝らか妹 提交于 2020-02-04 04:28:18
## logging模块 #### 什么是logging模块 logging模块是python提供的用于记录日志的模块 #### 为什么需要logging 我们完全可以自己打开文件然后,日志写进去,但是这些操作重复且没有任何技术含量,所以python帮我们进行了封装,有了logging后我们在记录日志时 只需要简单的调用接口即可,非常方便! #### 日志级别 在开始记录日志前还需要明确,日志的级别 随着时间的推移,日志记录会非常多,成千上万行,如何快速找到需要的日志记录这就成了问题 解决的方案就是 给日志划分级别 logging模块将日志分为了五个级别,从高到低分别是: 1.info 常规信息 2.debug 调试信息 3.warning 警告信息 4.error 错误信息 5.cretical 严重错误 本质上他们使用数字来表示级别的,从高到低分别是10,20,30,40,50 ## logging模块的使用 ```python #1.导入模块 import logging #2.输出日志 logging.info("info") logging.debug("debug") logging.warning("warning") logging.error("error") logging.critical("critical") #输出 WARNING:root

《团队名称》第八次团队作业:Alpha冲刺day5

孤者浪人 提交于 2020-02-03 12:02:41
项目 内容 这个作业属于哪个课程 2016计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验十二 团队作业8—软件测试与ALPHA冲刺 团队名称 快活帮 作业学习目标 (1)掌握软件测试基础技术。 (2)学习迭代式增量软件开发过程(Scrum)。 1.1前言: 时间:6月18日 地点:宿舍 会议内容:总结项目编码阶段遇到的问题,讨论学习。 时长:2小时 1.2任务分配: 姓名 今日任务完成情况 沙沙 总结各自负责模块的不足,使用不同的测试方案测试程序,总结程序的不足。06-18日例会总结 杨露露 总结各自负责模块的不足,使用不同的测试方案测试程序,总结程序的不足。 陈润菊 总结各自负责模块的不足,使用不同的测试方案测试程序,总结程序的不足。 张琳 总结各自负责模块的不足,使用不同的测试方案测试程序,总结程序的不足。 1.3燃尽图: 1.4会议照片: 1.5成员贡献时间: 姓名 贡献时间(小时) 沙沙 2 杨露露 1.5 陈润菊 1.5 张琳 1.5 1.6会议总结(包括任务完成过程中遇到的问题以及解决方法): 顺利的完成了为期5天的开发阶段,整个过程中遇到了很多的问题包括代码的改进,测试的方式,需求的理解等。不过通过组内商量,用我们现有的技术水平,问题都得到了一定程度上的解决。这次开发过程肯定是我们小组成员以后最美好的回忆。 来源: https://www

计算机二级考试公共基础知识-软件工程基础

99封情书 提交于 2020-01-30 15:22:07
文章目录 第三章 软件工程基础 3.1 软件工程的基本概念 3.2 结构化设计方法 3.3 软件测试 3.4 软件调试 第三章 软件工程基础 详细重点学习知识点: 1、 软件的概念、软件生命周期的概念及各阶段所包含的活动; 2、概要设计与详细计划的概念、模块独立性及其度量的标准、详细设计常用工具; 3、软件测试的目的、软件测试的4个步骤; 4、软件调试的任务。 3.1 软件工程的基本概念 (1)软件定义与软件特点 软件是指计算机系统中与硬件相互依存的另一本分,包括程序、数据和相关开发文档的完整集合。程序是软件开发人员根据用户需求开发的、使用程序设计语言描述、适合计算机执行的指令序列。数据是使程序能正常操纵信息的数据结构。文档是与程序开发、维护、使用相关的图文资料。软件由两部分组成:① 机器可执行的程序和数据;② 机器不可执行的,与软件开发、维护和使用有关的文档。 软件的特点: ① 软件是逻辑实体,而不是物理实体,具有抽象性; ② 没有明显的制作过程,可进行大量复制; ③ 使用期间不存在磨损,老化问题; ④ 软件的开发、运行对计算机系统具有依赖性; ⑤ 软件的复杂性高,成本昂贵; ⑥ 软件开发涉及诸多社会因素。 (2)软件工程与软件生命周期 软件产品从提出、实现、使用维护到停止使用的过程称为软件生命周期。一般包括可行性分析研究与需求分析、设计、实现、测试、交付使用以及维护等活动

Flask测试与部署

感情迁移 提交于 2020-01-29 11:20:37
1. 蓝图 之前的学习都是在单个文件中定义数据模型类、表单模型类、视图函数、路由等,但是对于大型项目来说将所有代码放在一个文件会让代码可读性变差且难以维护。 真正的项目应根据具体不同的功能,划分成不同的模块,降低各功能模块之间的耦合度 使用模块导入解决耦合问题: - 即模型类和主程序放在一个模块内、视图函数放在一个模块内(导入app对象):可以降低耦合度,但是不能解决路由映射问题 - 模块导入出现循环导入问题(死锁)----》推迟一方的导入,让另一方先完成导入 - 使用app.route()返回装饰器解决:视图函数只定义不进行路由绑定,在主程序导入视图函数后使用app.route()进行路由绑定 蓝图:用于实现单个应用的视图、模板、静态文件的集合,是一个模块化处理的类(类似于Django中的一个应用模块的所有内容) 简单来说,蓝图就是一个独立模块的抽象代表,可以用来保存在应用对象上执行的操作,主要用来实现客户端请求和URL相互关联的功能 蓝图使用步骤: 1. 创建蓝图对象:必须指定两个参数:蓝图的名字及蓝图所在的模块(蓝图对象用来在视图函数中注册路由使用;蓝图名字指向当前模块) 2. 使用蓝图注册路由绑定视图函数:蓝图对象.route(rules, **args)(暂时存储在蓝图对象的defered_functions列表中) 3. 在主程序app对象上注册蓝图

10、pytest -- skip和xfail标记

浪子不回头ぞ 提交于 2020-01-29 06:25:39
目录 1. 跳过测试用例的执行 1.1. @pytest.mark.skip 装饰器 1.2. pytest.skip 方法 1.3. @pytest.mark.skipif 装饰器 1.4. pytest.importorskip 方法 1.5. 跳过测试类 1.6. 跳过测试模块 1.7. 跳过指定文件或目录 1.8. 总结 2. 标记用例为预期失败的 2.1. 去使能 xfail 标记 3. 结合 pytest.param 方法 往期索引: https://www.cnblogs.com/luizyao/p/11771740.html 实际工作中,测试用例的执行可能会依赖于一些外部条件,例如:只能运行在某个特定的操作系统( Windows ),或者我们本身期望它们测试失败,例如:被某个已知的 Bug 所阻塞;如果我们能为这些用例提前打上标记,那么 pytest 就相应地预处理它们,并提供一个更加准确的测试报告; 在这种场景下,常用的标记有: skip :只有当某些条件得到满足时,才执行测试用例,否则跳过整个测试用例的执行;例如,在非 Windows 平台上跳过只支持 Windows 系统的用例; xfail :因为一个确切的原因,我们知道这个用例会失败;例如,对某个未实现的功能的测试,或者阻塞于某个已知 Bug 的测试; pytest 默认不显示 skip 和 xfail

10、pytest -- skip和xfail标记

喜欢而已 提交于 2020-01-28 13:13:13
目录 1. 跳过测试用例的执行 1.1. @pytest.mark.skip 装饰器 1.2. pytest.skip 方法 1.3. @pytest.mark.skipif 装饰器 1.4. pytest.importorskip 方法 1.5. 跳过测试类 1.6. 跳过测试模块 1.7. 跳过指定文件或目录 1.8. 总结 2. 标记用例为预期失败的 2.1. 去使能 xfail 标记 3. 结合 pytest.param 方法 往期索引: https://www.cnblogs.com/luizyao/p/11771740.html 实际工作中,测试用例的执行可能会依赖于一些外部条件,例如:只能运行在某个特定的操作系统( Windows ),或者我们本身期望它们测试失败,例如:被某个已知的 Bug 所阻塞;如果我们能为这些用例提前打上标记,那么 pytest 就相应地预处理它们,并提供一个更加准确的测试报告; 在这种场景下,常用的标记有: skip :只有当某些条件得到满足时,才执行测试用例,否则跳过整个测试用例的执行;例如,在非 Windows 平台上跳过只支持 Windows 系统的用例; xfail :因为一个确切的原因,我们知道这个用例会失败;例如,对某个未实现的功能的测试,或者阻塞于某个已知 Bug 的测试; pytest 默认不显示 skip 和 xfail

系统软件开发文档编写指南

ε祈祈猫儿з 提交于 2020-01-28 06:16:09
系统软件开发文档编写指南 为帮助大家编写文档,这里列出了十三种文档的内容要求及其简要说明。这些文档包括:可行性研究报告,项目开发计划,需求规格说明书,概要设计说明书,详细设计说明书,用户操作手册,测试计划,测试报告,开发进度月报,项目开发总结报告,程序维护手册,软件问题报告和软件修改报告。各文档内容大纲由带编号的标题构成,标题后方括号内为其说明。这里给出一个统一的封面格式: ______________________________________________________________________________ 文档编号版本号______________ 文档名称____________________ 项目名称:______________________________________________ 项目负责人:____________________________________________ 开发单位:______________________________________________ 编写_____________ 校对_____________ 审核_____________ _________年________月__________日 , _________________________________________________

Scala版SpringBoot + Impala

こ雲淡風輕ζ 提交于 2020-01-27 04:03:13
工作需要做查询并导出数据的接口,考虑了SpringBoot + Spark 和 Impala,Spark只测试了本地模式,时间有限暂时没有测试yarn模式,但是Spark更适合做数据分析,查询Impala 是比较高效的,选择了以 Impala 做查询引擎。这里整合下 Impala 做个记录。不过因为项目有其他处理模块,所以只把Impala部分拆分出来,是完整的独立模块。 目录 @SpringBootApplication @Controller @Service Impala查询模块 @configuration Result请求结果类 Constants常量类 con.properties application.properties pom.xml 层级关系 @SpringBootApplication package com.sm import org.springframework.boot.SpringApplication import org.springframework.boot.autoconfigure.{EnableAutoConfiguration, SpringBootApplication} import org.springframework.context.annotation.ComponentScan /** * SpringBoot 入口 *

结对项目博客

两盒软妹~` 提交于 2020-01-26 04:03:36
1.代码仓库地址: https://git.coding.net/mafx8859/ArithWeb.git 远程服务器测试路径(直接点击测试): http://47.93.197.5:8080/ArithmeticWeb1.0/ 2.PSP表格: PSP 任务内容 计划共完成需要的时间 实际完成需要的时间 Planning 计划 一周 一周 Estimate 估计这个任务需要多少时间,并规划大致工作步骤 一周 一周 Development 开发 4天 4天 Analysis 需求分析 (包括学习新技术) 3.5(h) 3(h) Design Spec 生成设计文档 2(h) 2(h) Design Review 设计复审 (和同事审核设计文档) 1(h) 1(h) Coding Standard 代码规范 (为目前的开发制定合适的规范) 1(h) 40min Design 具体设计 1h 35min Coding 具体编码 2天 2天 Code Review 代码复审 1(h) 1(h) Test 测试(自我测试,修改代码,提交修改) 2(h) 2(h) Reporting 报告 2h 1.5h Test Report 测试报告 1.5h 1h Size Measurement 计算工作量 30min 30min Postmortem & Process Improvement