公司的网站建设公司seo的主要工作内容

web/2025/10/4 20:56:26/文章来源:
公司的网站建设公司,seo的主要工作内容,做网站用html还是php,企业门户网站建设市场编写JUnit测试可能是一个乏味而乏味的过程。 了解如何使用排列结合TestFactory方法和DynamicTest对象以最少的编码工作来改进测试类。 在本文中#xff0c;我将使用Java流ORM Speedment#xff0c;因为它包含一个现成的Permutation类#xff0c;从而帮助我节省了开发时间。… 编写JUnit测试可能是一个乏味而乏味的过程。 了解如何使用排列结合TestFactory方法和DynamicTest对象以最少的编码工作来改进测试类。 在本文中我将使用Java流ORM Speedment因为它包含一个现成的Permutation类从而帮助我节省了开发时间。 否则加速可以将数据库表连接到标准Java流。 Speedment是一个开放源代码工具也有免费版本供商业数据库使用。 测试流 考虑以下JUnit5测试 Test void test() {ListString actual Stream.of(CCC, A, BB, BB).filter(string - string.length() 1).sorted().distinct().collect(toList());ListString expected Arrays.asList(BB, CCC);assertEquals(actual, expected); } 如可以看到的该测试将创建一个Stream与所述元素“CCC”“A”“B-B”和‘BB’然后应用一个过滤器将删除‘A’元素因为它的长度是不大于1的。 之后对元素进行排序以便流中具有元素“ BB”“ BB”和“ CCC”。 然后应用独特的操作删除流中的所有重复项在调用最终终止运算符之前保留元素“ BB”和“ CCC”从而将这些其余元素收集到 List 。 经过一番考虑可以理解中间操作filter() sorted()和distinct()的应用sorted()无关紧要。 因此无论操作员应用程序的顺序如何我们都期望得到相同的结果。 但是我们如何才能找到一个JUnit5测试来证明该顺序对于所有排列都是无关紧要的而无需手动为所有六个排列编写单独的测试用例 使用TestFactory 除了编写单个测试我们还可以使用TestFactory生成任意数量的DynamicTest对象。 这是演示该概念的简短示例 TestFactory StreamDynamicTest testDynamicTestStream() {return Stream.of(DynamicTest.dynamicTest(A, () - assertEquals(A, A)),DynamicTest.dynamicTest(B, () - assertEquals(B, B))); } 这将产生两个可能毫无意义的名为“ A”和“ B”的测试。 请注意我们如何方便地返回DynamicTest对象Stream 而无需先将它们收集到 诸如List Collection 。 使用排列 Permutation类可用于创建任何类型T所有可能组合。 这是带有类型的简单示例 String Permutation.of(A, B, C).map(is - is.collect(toList())).forEach(System.out::println); 因为Permutation创建了类型为T的Stream的Stream 所以我们添加了一个中间映射操作将内部Stream收集到List 。 上面的代码将产生以下输出 [A, B, C] [A, C, B] [B, A, C] [B, C, A] [C, A, B] [C, B, A] 容易证明这是将“ A”“ B”和“ C”组合在一起的所有方式每个要素应恰好发生一次。 创建运算符 在本文中我选择为中间操作创建Java对象而不是使用lambda因为我想覆盖toString()方法并将其用于方法标识。 在其他情况下直接使用lambda或方法引用就足够了 UnaryOperatorStreamString FILTER_OP new UnaryOperatorStreamString() {Overridepublic StreamString apply(StreamString s) {return s.filter(string - string.length() 1);}Overridepublic String toString() {return filter;}};UnaryOperatorStreamString DISTINCT_OP new UnaryOperatorStreamString() {Overridepublic StreamString apply(StreamString s) {return s.distinct();}Overridepublic String toString() {return distinct;} };UnaryOperatorStreamString SORTED_OP new UnaryOperatorStreamString() {Overridepublic StreamString apply(StreamString s) {return s.sorted();}Overridepublic String toString() {return sorted;} };测试排列 现在我们可以轻松地在运算符上测试置换的工作方式 void printAllPermutations() {Permutation.of(FILTER_OP,DISTINCT_OP,SORTED_OP).map(is - is.collect(toList())).forEach(System.out::println); } 这将产生以下输出 [filter, distinct, sorted] [filter, sorted, distinct] [distinct, filter, sorted] [distinct, sorted, filter] [sorted, filter, distinct] [sorted, distinct, filter] 可以看出这些都是我们要测试的中间操作的置换。 拼接起来 通过结合以上学习我们可以创建TestFactory 以测试应用于初始流的中间操作的所有排列 TestFactory StreamDynamicTest testAllPermutations() {ListString expected Arrays.asList(BB, CCC);return Permutation.of(FILTER_OP,DISTINCT_OP,SORTED_OP).map(is - is.collect(toList())).map(l - DynamicTest.dynamicTest(l.toString(),() - {ListString actual l.stream().reduce(Stream.of(CCC, A, BB, BB),(s, oper) - oper.apply(s),(a, b) - a).collect(toList());assertEquals(expected, actual);})); } 请注意我们如何使用Stream::reduce方法将中间操作逐步应用于初始Stream.of(CCC, A, BB, BB) 。 合路器lambda (a, b) - a只是一个虚拟对象仅用于合并并行流此处未使用。 爆炸警告 最后对置换的内在数学复杂性提出了警告。 根据定义排列的复杂度为O(n!) 例如仅将一个元素添加到现有的八个元素的排列中排列的数量将从40,320增加到362,880。 这是一把双刃剑。 我们几乎免费地获得了许多测试但是我们必须付出在每个构建上执行每个测试的代价。 码 测试的源代码可以在这里找到。 可以在这里下载Speedment ORM 结论 Permutation DynamicTest和TestFactory类是用于创建编程JUnit5测试的出色构建块。 注意不要在排列中使用太多元素。 “炸毁”可能意味着两件事…… 翻译自: https://www.javacodegeeks.com/2018/10/blow-junit5-tests-permutations.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/86984.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

东莞网站建设化工wordpress移动端适应

BAPI_PR_CREATE 技术指南 用途:通过 RFC 接口创建 SAP 采购申请(PR),支持自动化集成与批量处理。 一、功能概览 类别说明核心功能创建标准采购申请、预留转采购申请,支持多行项目及账户分配。集成场景与 MRP 系统、外…

注册建设网站的公司seo优化6个实用技巧

HTML详解连载(1) HTML定义HTML 超文本标记语言标签语法注意拓展 HTML基本骨架解释VS Code 快速生成骨架:标签的关系父子关系(嵌套关系)兄弟关系(并列关系) 代码格式注释 标题标签标签名:h1-h6(双…

东莞网站推广服务湖南省住房和建设厅网站

HBase 中设计 RowKey 在 HBase 中设计 RowKey 是非常重要的,它直接影响着数据的存储和检索效率。下面是一些设计 RowKey 的原则: 1. 唯一性(Uniqueness):RowKey 必须是唯一的,因为在 HBase 中,数…

公司网站模块制作自建网站做外贸

Q-learning、DQN算法是基于价值的算法,通过学习值函数、根据值函数导出策略;而基于策略的算法,是直接显示地学习目标策略,策略梯度算法就是基于策略的算法。 策略梯度介绍 将策略描述为带有参数 θ \theta θ 的连续函数&#…

响应式网站切图网上推广是什么意思

需求 基于ListView,创建一个列表视图,用于展示"BookInfo"表的信息要求提供分页提供对书名,作者,描述的查询功能 示例展示: 1. 数据模型 models.py class BookInfo(models.Model):titlemodels.CharField(verbose_name"书名",max_length100)authormode…

70 网站制作wordpress 5.1.1

发布时间:2017-09-25我的世界惊现全新无限刷物品bug 服主大大都要注意了.那今天给大家分享一个玩家无意间发现的新的无限刷物品bug,而且还是在服务器中哦!那感兴趣的玩家不妨进来看看哦! 在一个rpg服务器玩 开小号召唤boss的时候发现的. ...标签:我的世界…

朝阳双桥网站建设外贸网络推广专员

欢迎您成为我的读者,希望这篇文章能给你一些帮助。前言日常编码过程中,最重要的技能不是说你学会使用很多最新的编程技术或者做出一个高大上的系统。而是你在写代码过程中,对异常的处理,是否系统可以稳定,健壮。对于异…

网站搭建上海建设工程咨询网 首页

在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优化,是And…

wordpress只显示首页网站优化设计

复杂数据结构处理:Join 小技巧:提升数据的处理速度 本文是在原本sql闯关的基础上总结得来,加入了自己的理解以及疑问解答(by GPT4) 原活动链接 用到的数据:链接 提取码:l03e 目录 1. 课前小问…

浙江和海建设集团网站首页社区电商平台排行榜

非监督学习 1 什么是非监(unsupervised learning)督学习 无监督学习,就是不受监督的学习,一种自由的学习方式。该学习方式不需要先验知识进行指导,而是不断地自我认知,自我巩固,最后进行自我归纳,在机器学…

校园网站规划与建设心得甘肃兰州做网站

之前看到一个项目不能继承类SimpleTagSuppert类,而将jsp-api.jar(不知道servlet-api.jar能不能放)放入到了 jdk/jre/lib/ext包下面结果不仅正在写的jsp不能运行,以前的web应用也不能运行,会出现 java.lang.ClassNotFo…

株洲网站建设服务公司前端页面设计流程

简单工厂模式 简单工厂模式的概念 简单工厂模式属于类的创建型模式,又叫做静态工厂方法模式。通过专门定义一个类来负 责创建其他类的实例,被创建的实例通常都具有共同的父类。 具体分类 工厂(Creator)角色 简单工厂模式的核心&#xff0…

模板和网站可以分开吗利用店铺网站做灰色优化

目录 一、什么是字体反扒 二、Unicode编码 三、利用font包获取映射关系 一、什么是字体反扒 字体反爬是一种常见的反爬虫技术,它通过将网页中的文本内容转换为特殊的字体格式来防止爬虫程序直接获取和解析文本信息。字体反爬的原理是将常规的字符映射到特殊的字…

国外网站视频播放器如何做好网站seo优化

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

做网站公司需要什么资质自己接私单网站开发

TS223是触摸键检测IC,提供1个触摸键。触摸检测IC是为了用可变面积的键取代传统的按钮键而设计的。低功耗和宽工作电压是触摸键的DC和AC特点。采用SSOP16、SOT-23-6的封 装形式封装。 主要特点: ● 工作电压2.0V~5.5V ● 工作电流VDD3V, 无…

大安网站建设如何自己做网站一年赚一亿

使用函数实现数据大小端转换 题目描述 在数字芯片设计中,经常把实现特定功能的模块编写成函数,在需要的时候再在主模块中调用,以提高代码的复用性和提高设计的层次,分别后续的修改。 请用函数实现一个4bit数据大小端转换的功能。…

西安建设网站电话号码软文营销的五大注意事项

NovelD:一种简单而有效的探索准则 1、Motivation 针对稀疏奖励环境下的智能体探索问题,许多工作中采用各种内在奖励(Intrinsic Reward)设计来指导困难探索环境中的探索 ,例如: ICM:基于前向动力学模型的好奇心驱动探索RND&…

东莞塘厦网站建设平台网站建设预算表

目录 模式简介 介绍 优点 缺点 代码实现 场景说明 实现代码 运行结果 模式简介 观察者模式(Observer Pattern),也叫我们熟知的发布-订阅模式。 它是一种行为型模式。 介绍 观察者模式主要关注的是对象的一对多的关系, …

阿里云虚拟主机建网站宁波模板建站多少钱

题型:链表 链接:2. 两数相加 - 力扣(LeetCode) 来源:Leet 题目描述 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 …

上海太江建设网站柳州建网站

文章目录 实验概览目标实验环境任务 1:查看网络拓扑并创建基准任务 2:创建中转网关任务 3:创建中转网关挂载任务 4:创建中转网关路由表任务 4.1:创建路由表关联任务 4.2:创建路由传播 任务 5:更…