英文网站制作 官网,wordpress项目导入,买东西最便宜的购物软件,百度我的订单查询forge开发在这篇文章中#xff0c;我们将看到如何使用WildFly Swarm和Forge开发微服务#xff0c;以及如何使用Arquillian和Rest Assured对其进行测试。 WildFly Swarm提供了一种创新的方法来打包和运行Java EE应用程序#xff0c;方法是将它们与足够的服务器运行时一起打包… forge开发 在这篇文章中我们将看到如何使用WildFly Swarm和Forge开发微服务以及如何使用Arquillian和Rest Assured对其进行测试。 WildFly Swarm提供了一种创新的方法来打包和运行Java EE应用程序方法是将它们与足够的服务器运行时一起打包以“ java -jar”您的应用程序。 JBoss Forge是一个软件开发工具可扩展您的Java IDE并提供用于不同技术和解决方案的向导和扩展附加组件。 Arquillian是一个简化Java中间件集成测试的平台。 它处理了容器管理部署和框架初始化的所有工作因此您可以专注于编写测试实际测试的任务。 REST Assured将动态语言例如Ruby和Groovy中的REST服务的测试和验证的简便性带入了Java域。 http://downloads.jboss.org/forge/releases/3.4.0.Final/forge-distribution-3.4.0.Final-offline.zip或导航至http://forge.jboss.org/download并下载EclipseNetbeans或IntelliJ的插件。 对于此示例我将使用CLI之一。 安装Forge并在PATH环境变量中提供它后就可以开始使用它了。 首先转到您要存储项目并运行伪造的目录。 几秒钟后您将看到Forge已启动并且可以键入命令了 之后您需要安装wildfly-swarm插件 。 为此只需在Forge shell上键入next命令 addon-install-from-git --url https://github.com/forge/wildfly-swarm-addon 然后将下载并安装最新的插件。 完成此设置步骤后您可以通过调用以下命令开始创建微服务 project-new --top-level-package org.superbiz --named foo --type wildfly-swarm 此命令创建一个名为foo的新项目其中准备了满足所有wildfly swarm要求的pom.xml 。 下一步是添加野生群片段。 片段是一种定义您希望在运行时能够使用的模块的方法。 wildfly-swarm-add-fraction --fractions microprofile 在这种情况下添加微轮廓部分。 这意味着在运行时CDI JSON-P JAXRS将可用.Addon还创建了一个JAX-RS端点作为示例您可以通过运行以下两个命令来检查它 cd src/main/java/org/superbiz/rest/HelloWorldEndpoint.javals 然后返回到项目的根目录让我们调用为微服务创建Arquilian测试的命令 wildfly-swarm-new-test --target-package org.superbiz --named HelloWorldEndpointTest --as-client 在这种情况下测试称为HelloWorldEndpointTest并且测试将以Arquillian as-client模式运行这意味着该测试未部署在容器内部将在本地运行时运行。 您可以使用以下两个命令检查生成的代码 cd src/test/java/org/superbizcat HelloWorldEndpointTest.java 请注意该测试尚未验证任何内容但是由于我们使用的是as-client模式因此该测试会在启动应用程序的位置注入URL。 让我们使用REST-assured添加一些检查。返回项目的根目录并通过调用next命令添加REST-assured依赖项 project-add-dependencies io.rest-assured:rest-assured:3.0.1:testcat pom.xml 最后您可以在空测试中使用REST保证的方法来验证您的微服务端点是否有效地返回“来自WildFly Swam的问候”。 。 package org.superbiz;import io.restassured.builder.RequestSpecBuilder;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.arquillian.test.api.ArquillianResource;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.wildfly.swarm.arquillian.DefaultDeployment;import java.net.URISyntaxException;
import java.net.URL;import static io.restassured.RestAssured.given;
import static org.hamcrest.CoreMatchers.is;RunWith(Arquillian.class)
DefaultDeployment(testable false, type DefaultDeployment.Type.WAR)
public class HelloWorldEndpointTest {ArquillianResourceprivate URL url;Testpublic void should_start_service() throws URISyntaxException {RequestSpecBuilder requestSpecBuilder new RequestSpecBuilder();requestSpecBuilder.setBaseUri(url.toURI());given(requestSpecBuilder.build()).when().get(hello).then().assertThat().body(is(Hello from WildFly Swarm!));}
} 当您运行此测试时幕后发生的事情是微服务在本地打包和部署。 当服务准备好接收传入的请求时测试将向/ hello发送GET请求并断言响应正文为“来自WildFly Swam的Hello”。 您可以在https://youtu.be/9xb6GIZ1gjs看到运行 这是一个非常简单的示例而这正是本文的目的。 只需向您展示如何使用Forge并运行一些命令就可以运行集成测试来启动项目。 翻译自: https://www.javacodegeeks.com/2017/01/develop-microservice-forge-wildfly-swarm-arquillian.htmlforge开发