有关有效企业测试的视频课程

我已经制作了一些有关有效企业测试的视频。 我仍然在现实世界项目中看到这个主题的巨大重要性。 这是我在测试Enterprise Java项目中的经验以及一些示例。

1.介绍和有效的Maven使用

在此视频中,我将介绍测试过程,并演示如何使用Maven在标准企业项目中构建测试。 我们将分别看到使用surefire和failsafe进行的Maven单元测试和集成测试之间的区别,以及如何有效使用Maven约定。 我们的目标是通过简单的设置来实现快速的Maven构建。

2.单元测试

在此视频中,我将展示如何使用JUnit,Mockito和AssertJ建立快速执行的简单单元测试。 我们将看到单元测试的优缺点,尤其是在重构生产代码时。 我们将看看这种简单的单元测试在哪些情况下有意义。

3.用例测试

在此视频中,我将介绍所谓的用例测试的方法。 用例测试旨在验证业务用例的执行情况,包括所有涉及的组件,但不包括所有外部问题,例如HTTP网关或数据库访问。 为了确保用例测试快速运行,而又不启动应用程序的各个部分,我们在这里也使用普通的JUnit。 为了使我们的测试可维护,我们提出了可重复使用的测试双打,它扩展了生产范围中涉及的类。 在视频中,我们将看到该方法如何与示例代码一起使用。

4.系统测试-第1部分

在本视频中,我将展示代码级集成测试,该测试可模拟应用程序的某些部分及其缺点。 我们将看到,就整体测试和反馈时间而言,专注于端到端集成测试更为有效。 在视频中,我展示了如何通过手动连接到示例应用程序来在以后的系统测试中验证我们的应用程序的手动方法。

5.系统测试-第2部分

在此视频中,我将展示如何建立集成测试,该集成测试以与客户端相同的方式连接到被测应用程序。 我们将看到如何通过引入抽象并将关注点分离为委托来使有时复杂的场景更易于维护。 我们将比较一个简单的方法与一个使用代码质量的测试,我们发现可维护性有所不同。 我们来看看将测试生命周期与测试环境生命周期分开的好处。 我还展示了一种方法,该方法如何通过使用一些热重载技术来真正快速地缩短周转周期,这些技术允许开发人员在本地更改生产代码并在一秒钟内获得非常快速的反馈。

6.系统测试-第3部分

在此视频中,我将展示一个带有单独项目的系统测试项目结构,并说明其动机。 我们将看到驻留在系统测试项目中的更复杂的系统测试的示例,以及如何连接和控制模拟服务器的示例,在本示例中将使用WireMock。 涉及模拟服务器的系统测试示例将验证被测应用程序与外部微服务之间的通信。 我们将再次利用抽象和委托使我们的验收测试易于阅读和维护。 我们通过将测试生命周期与测试环境生命周期分开来确保可重用性,一旦我们有了更复杂的示例,这尤其对我们有利。

7.高效的开发工作流程

在此视频中,我将展示如何构建有效的开发工作流程。 我们将看到使用简单技术构建本地开发工作流程的好处。 我们将研究本地开发和测试环境的动机以及它如何连接到正确的CI / CD工作流程。 我将展示如何使用Kubernetes在类似生产的环境中运行系统测试环境,以及如何重用我们之前编写的相同系统测试。

8.测试代码质量

在本视频中,我将展示如何通过分离关注点来通过抽象层和委托来提高测试代码的质量,可读性和可维护性。 我们将看到委托如何外包低级逻辑,例如处理单个执行,验证或模拟。 我们将看到,无论我们是在处理代码级测试还是在集成的应用程序级方案中,这些原则都应适用于所有测试范围。

9.测试技术和框架

在本视频中,我将介绍我通常建议在企业项目中使用的测试技术。 我们将看看JUnit,Mockito,AssertJ,测试快速运行的重要性,技术速度和测试生命周期。 作为其他示例技术,我将提到Testcontainers,AssertJ,Cucumber Tests,以及测试代码质量的重要性。 我还将总结这些视频系列中提出的观点。

更多资源

  • 咖啡厅测试项目
  • 高效企业测试文章系列
  • 书籍:架构现代Java EE应用程序

希望该内容对您有所帮助。 测试愉快!

翻译自: https://www.javacodegeeks.com/2020/01/video-course-on-efficient-enterprise-testing.html

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

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

相关文章

android自定义弹出对话框,使用FlyDialog实现自定义Android弹窗对话框

前言学习的时候要用到弹窗,但是又觉得i同自带的弹窗样式有点不太美观,搜索资料后发现了FlycoDialog这个开源库,效果很好,而且实现起来也比较方便。先列举一些比较好看的效果:NormalListDialogActionSheetDialog这篇文章主要来讲一下他的自定义…

nacos 本地测试_Nacos集群配置实例(windows下测试)

1、首先 fork 一份 nacos 的代码到自己的 github 库,然后把代码 clone 到本地。git地址:https://github.com/alibaba/nacos.git2、然后将你的项目导入到ideal编辑器中(找到子项目distribution)3、添加集群节点:找到文件distribution->conf…

Android手机如何修改Mac地址,安卓手机怎么修改mac地址

有些时候我们如果绑定了某个mac,那么其他用mac就无法上网,应该怎么修改呢?学习啦小编从网上搜集整理了3种修改安卓手机mac 地址的方法。修改安卓手机mac 地址的方法修改安卓手机mac 地址的方法第一种:软件法下面介绍一款软件 叫物理地址修改…

应用回归分析何晓群_二战上岸人大20年应用统计高分经验帖

首先介绍一下本人的基本情况。男,本科金融学,同时修过数学双学位。一战人大经济学硕,总分 370(专业课没过线)。二战决定考人大应统专硕(除了专业课换了,公共课都一样)。二战总分430&…

基于单片机步进电机ppt答辩_基于单片机的步进电机式汽车仪表的设计(含电路原理图,程序)...

基于单片机的步进电机式汽车仪表的设计(含电路原理图,程序)(课题申报表,任务书,开题报告,中期检查表,外文翻译,论文21000字,程序,答辩PPT)摘 要汽车仪表是驾驶者和汽车的交互界面,为驾驶员提供所需要的运行参数、故障、里程等实时信息,是不可或缺的部分。…

android webview js 交互框架,自定义android混合框架开发实践1:实现基础andorid和webview交互...

1. 本地web资源1.构建assets/web文件夹2.创建index.html你的html代码3.使用本地web资源WebView mv findViewById(...);mv.loadUrl("file:///android_asset/web/index.html")2.实现基础的android和js交互(1). 实现js调用andorid方法在Acitivity内构建一个functionJav…

jxls使用excel公司_使用jXLS将Excel文件解析为JavaBeans

jxls使用excel公司这篇文章展示了如何使用jXLS将Excel文件解析为JavaBeans列表。 这是我编写的通用实用程序方法&#xff1a; /** * Parses an excel file into a list of beans. * * param <T> the type of the bean * param xlsFile the excel data file to parse * …

网站部署后无法访问sqlserver_.NET Core跨平台部署

1. Windows-IIS大家对于在IIS上部署.NET站点已经驾轻就熟了&#xff0c;部署.NET Core也没有什么本质区别&#xff0c;但是这其中仍然有一些细节是不同的&#xff0c;下面记录了一些我在部署时遇到的问题1.1 安装.NET Core Windows Server Hosting要在IIS上运行http://ASP.NET …

ajax如何传超长字符串_解决ajax超长字符串、中文乱码问题

在最近的项目测试中发现通过ajax发送超长参数时遇到这个脚本错误&#xff1a;系统找不到指定资源the system cannot locate the resource specified意思是参数太长&#xff0c;无法发送&#xff0c;测试的浏览器是IE6//IE7//IE8&#xff0c;由于利用了ActiveX所以其他浏览器的情…

Android代码数字证书,有关Android中读取证书

最近在项目中遇到了读取证书中内容与读取keystore中对应公钥的需求&#xff0c;在此做一下笔记读取证书最近项目中遇到后台返回个byte[]数组类型的证书&#xff0c;需要从证书中获取相关内容&#xff0c;先看一下相关代码BufferedInputStream mStream null;try {String s new…

Spring Boot中的高级配置文件管理

我们都知道Spring Boot中的配置文件管理及其为不同环境配置应用程序时提供的灵活性。 此功能的另一个强大方面是&#xff0c;在任何给定时间&#xff0c;我们都可以拥有多个活动配置文件。 这样做的好处是我们可以将部署环境配置文件与业务用例相关的配置文件混合在一起。 让我…

先装vs还是先装sql_【家装话题】装修师先装门还是先装地板?

装修先装门还是先装地板从成品保护角度说&#xff0c;先装门&#xff0c;成品保护相对容易&#xff0c;不管是发泡胶的滴落&#xff0c;玻璃胶的污染&#xff0c;安装门用的电动工具&#xff0c;包装垃圾&#xff0c;锯末&#xff0c;钻孔钉凿的冲击。直接在水泥地面上操作&…

python openpyxl模块追加数据_python openpyxl模块实现excel的读取,新表创建及原数据表追加新数据...

当实际工作需要把excel表的数据读取出来&#xff0c;或者把一些统计数据写入excel表中时&#xff0c;一个设计丰富&#xff0c;文档便于寻找的模块就会显得特别的有吸引力&#xff0c;本文对openpyxl模块的一些常见用法做一些记录&#xff0c;方便工作中查询(好记性不如烂笔头)…

android 百度开发论坛,Android 百度地图开发(一)

现在好多手机应用开发需要使用到百度地图,在使用百度地图的过程和遇到的问题整理一下方便以后使用申请密钥使用白度地图首先需要申请API Key,申请百度账户才能得到API Key. 登录 http://developer.baidu.com/map/ 点击申请密钥申请过程中需SHA1,使用Eclipse的同学应该很容易使用…

s905各种型号的区别_梯式桥架和槽式桥架的区别介绍

电缆桥架是我们日常生活中经常可以看到的一种既可以保护电缆电线不受外界因素损坏&#xff0c;并保障着我们用电安全的一种建筑材料。电缆桥架是由支架、托臂以及安装附件组成的&#xff0c;桥架既可独立架设安装&#xff0c;也可以敷设在建筑物和管廊支架上。对于电缆桥架型号…

shell中正则表达式详解_Linux中的正则表达式

点击上方Linux迷&#xff0c;关注我们正文来自&#xff1a;https://www.linuxmi.com/linux-zhengzebiaodashi.html正则表达式就是用于匹配每行输入的一种模式&#xff0c;模式是指一串字符序列。拥有强大的字符搜索功能。也非常方便的搜索过滤出我们想要的内容。Linux系统&…

android 编辑9图片,Android基础入门教程——1.6 .9(九妹)图片怎么玩

Android基础入门教程——1.6 .9(九妹)图片怎么玩Android基础入门教程1.本节引言&#xff1a;可能有的一些疑问&#xff1a;1.什么是.9图片&#xff1f;答&#xff1a;图片后缀名前有.9的图片,如pic1.9.png这样的图片2. .9图片能干嘛&#xff1f;答&#xff1a; 在图片拉伸的时候…

Spring WebClient和Java日期时间字段

WebClient是Spring Framework的反应式客户端&#xff0c;用于进行服务到服务的调用。 WebClient已成为我的实用工具&#xff0c;但是最近我意外地遇到了一个问题&#xff0c;即它处理Java 8时间字段的方式使我绊倒了&#xff0c;本文对此进行了详细介绍。 快乐之路 首先是幸福…

2台电脑一根网线传文件_Iphone 和PC如何共享文件

iphone上有个隔空传送的功能&#xff0c;传文件非常方便&#xff0c;但是需要苹果全家桶才能使用&#xff0c;和个人pc如何传文件&#xff0c;特别是家里的主力台式机&#xff0c;需要传个视频文件&#xff0c;微信25m限制&#xff0c;插线也不太方便&#xff0c;能否和隔空传送…

如何将原图和json融合_双曲知识嵌入:如何将知识“融合”带入新空间?

知识图谱作为人类知识的结构化数据&#xff0c;是构建人工智能的基石。然而目前的知识图谱都是不完备的&#xff0c;所以需要将多个知识图谱融合以获得更完备的知识库。基于表示学习的知识关联作为知识图谱融合的新方法受到了许多关注。但知识关联模型面临着参数多、复杂性高、…