促销活动
CodeGym University
学习
课程
任务
调查和小测验
游戏
帮助
提醒时间表
社区
用户
论坛
聊天
文章
成功故事
活动
评论
订阅服务
浅色主题
课程
评论
关于我们
开始
开始学习
立即开始学习
目标地图
课程
全部目标
全部级别
相关项目:Maven
模块 3
第 2 级,
课程 6
任务:您需要通过 CodeGym 的图形引擎制作一个带有 JavaFX 游戏的可执行 JAR 文件。 为此你需要: 从存储库中分叉https://github.com/CodeGymCC/project-maven 将您的项目版本下载到您的计算机。接下来,我们将使用pom.xml文件。 添加依赖项: org.apache.commons:commons-lang3:3.12.0 org.openjfx:javafx-controls:18.0.1 com.java
程序员生活中的测试
模块 3
第 3 级,
课程 0
为什么程序员需要测试? 接下来的几个级别将致力于以程序员需要的方式进行测试。但首先,让我们找出什么是测试以及为什么需要测试。 关于软件,我们可以说测试的任务是检查程序: 做她必须做的事 不做不该做的事 顺便说一句,第二点与第一点一样重要,但稍后会更重要。 让我们从第一点开始。“程序做它应该做的事”是什么意思? 首先,需要有人列出该程序的所有用例。 其次,他们需要描述程序应该如何工作,用户应该如何表现,以及期望得到什么结果。你不能继续下去。 一旦我们写下“用户应该如何表现”,编
首次使用 JUnit 进行测试
模块 3
第 3 级,
课程 1
连接 JUnit 框架 为了测试 Java 代码,我们有一个很棒的框架,称为JUnit。它运行良好,不断更新,非常受欢迎,当然 Intellij IDEA 与它紧密集成。 现在每个人都在使用这个框架的第五个版本——JUnit 5,尽管在很多项目中你仍然可以找到它的第四个版本。它们并没有太大的不同,但无论如何我们都会看一下最新的。我想当你开始积极编写测试时,你会赞同我的选择。 那么,如何将JUnit添加到项目中呢?学习 Maven 后,这将很容易:只需将此代码添加到您的 pom
在 JUnit 中设置测试环境
模块 3
第 3 级,
课程 2
3.1 注解@BeforeEach、@AfterEach 请注意,在前面的示例中,我们必须在每个方法中编写代码来创建一个对象计算器. 当然这只是一行,但是如果我们测试真实的系统,经常会出现需要创建和配置几个对象的情况,这可能需要几十行代码。例子: //Создаем объект HttpClient
JUnit 中有用的注解
模块 3
第 3 级,
课程 3
4.1 @禁用 现在让我们看一下 JUnit 框架的一些非常有用和流行的注释。第一个注释允许您关闭特定测试,以便 JUnit 不调用它。如果您注意到测试无法正常工作,或者您更改代码并且测试意外中断,则需要它。 正如我之前所写,99% 的测试都没有人支持,所以它们迟早会被禁用。因此,此注释是有用注释列表中的第一个。 考虑她的例子: public class AppTest {
Junit 中的参数化测试
模块 3
第 3 级,
课程 4
5.1 @ParameterizedTest注解 有时您只想使用不同的参数多次调用测试:不同的值、不同的输入参数、不同的用户名。JUnit 旨在让您的生活更轻松,因此对于这种情况,它具有参数化测试这样的东西。 要使用参数化测试,您需要再添加一个依赖项到您的pom.xml:
JUnit 断言
模块 3
第 3 级,
课程 5
6.1 断言 断言是可以插入代码不同位置的特殊检查。他们的任务是确定出了什么问题。或者更确切地说,检查一切是否按预期进行。这是“根据需要”,它们允许您以各种方式进行设置。 您已经在上面的代码中遇到过一些断言。第一个是检查对象是否相等。如果对象不相等,将抛出异常并且测试将失败。 比较的顺序在这里很重要,因为最终报告中的 JUnit 会写类似“收到值 1,但预期为 3”的内容。这种检查的一般格式是: assertEquals(эталон, значение) 例子: @Test
JUnit 中流行的注解
模块 3
第 3 级,
课程 6
7.1 @Suite注解 以及一些更常用的注解。即使您不使用它们,您也一定会看到使用它们进行的测试。因此,有必要至少大致了解那里写的内容。 测试可以组合成组。对此有一个特殊的注解@Suite。例子: @Suite
使用 Mockito 进行高级测试
模块 3
第 4 级,
课程 0
1.1 Mockito 库 今天我们将熟悉高级测试。更具体地说,使用Mockito库。甚至不要考虑离开这个行业。 首先,这个库是Spring测试中的一个标准。这实际上是 Java 后端开发行业的标准。 其次,您必须为 Spring 代码编写测试。了解您编写的后端是否正常工作的唯一方法是调用其 API 的方法。进行测试比不进行测试要容易 10 倍。你会亲眼看到的。 pom.xml您可以使用以下代码将 Mockito 库添加到您的库中:
基本 Mockito 注释
模块 3
第 4 级,
课程 1
2.1 @Mock注解 在 Mockito 中有两种处理模拟对象的方法。第一种是创建一个完全虚拟的对象,第二种是将现有对象包装在包装器中。让我们从第一个开始。 要创建一个完全虚拟的对象,您需要编写代码: ИмяКласса имяПеременной = Mockito.mock(ИмяКласса.class); 让我们创建一个模拟 ArrayList 类作为示例: @ExtendWith(MockitoExtension.class)
模拟对象
模块 3
第 4 级,
课程 2
3.1 doReturn()方法 现在魔法来了…… 假设您创建了一个伪造的模拟对象,但您需要它以某种方式工作。当调用某些方法时,完成了一些重要的事情,或者这些方法返回了某个结果。该怎么办? Mockito 库允许您将所需的行为添加到模拟对象。 如果你想让模拟对象在调用某个方法时返回某个结果,那么可以使用代码将这个“规则”添加到对象中: Mockito.doReturn(результат).when(объект).имяМетода(); 你看,在方法调用结束时,имяМе
调用带有参数的模拟方法
模块 3
第 4 级,
课程 3
4.1 方法参数 添加到模拟对象的先前规则处理没有参数的方法。以及如何为带参数的方法创建规则?此外,我想创建规则,以便对于某些参数值有一个结果,而对于其他参数值则有另一个结果。 你也可以这样做。如果您希望该方法返回带有特定参数的特定内容,则可以这样编写规则: Mockito.doReturn(результат).when(объект).имяМетода(параметр); 让我们看一个例子来更好地理解。让我们的 List 在请求第 10 个元素时返回名字 Ivan,在
显示更多
1
...
23
24
25
26
27
...
35
Please enable JavaScript to continue using this application.