Book Image

Hands-On Cloud Development with WildFly

By : Tomasz Adamski
Book Image

Hands-On Cloud Development with WildFly

By: Tomasz Adamski

Overview of this book

The book starts by introducing you to WildFly Swarm—a tool that allows you to create runnable microservices from Java EE components. You’ll learn the basics of Swarm operation—creating microservices containing only the parts of enterprise runtime needed in a specific case. Later, you’ll learn how to configure and test those services. In order to deploy our services in the cloud, we’ll use OpenShift. You’ll get to know basic information on its architecture, features, and relationship to Docker and Kubernetes. Later, you’ll learn how to deploy and configure your services to run in the OpenShift cloud. In the last part of the book, you’ll see how to make your application production-ready. You’ll find out how to configure continuous integration for your services using Jenkins, make your application resistant to network failures using Hystrix, and how to secure them using Keycloak. By the end of the book, you’ll have a functional example application and will have practical knowledge of Java EE cloud development that can be used as a reference in your other projects.
Table of Contents (14 chapters)

Testing Swarm microservices with Arquillian

In this section, you will learn how Arquillian can be used to test microservices created with Swarm. As you learned in previous chapters, Swarm builds a runtime containing only fractions needed by a given service, starts it, and then deploys an archive on it, creating the microservice.

Arquillian, as we have just learned, tests an application on its dedicated runtime. It starts the runtime, deploys the tested code on it, and performs the test. Let's configure such a test for our JAX-RS and the CDI catalog service example, and explain what we are doing step by step.

For examples: refer to chapter 5/catalog-service-simple-test.

First of all, we have to provide all the necessary dependencies:

(...)

<dependencyManagement>
<dependencies>
<!-- 1 -->
<dependency>
...