Java for the cloud, and the cloud for Java

Running Java in the cloud helps lower costs, speed up operations, and simplify the deployment.

Working and unit testing with temporary files in Java

Temporary files are frequently used in testing and in production. Here is how to create and manage—and delete—them.

Design change-tolerant software with cloud native patterns

By applying cloud native designs, you can build resilient, easily adaptable, web-scale distributed applications that handle massive user traffic and data loads.

Refactoring Java, Part 3: Regaining business agility by simplifying legacy code

By making the code easier to understand, you also make it easier—and safer—to maintain.

Refactoring Java, Part 2: Stabilizing your legacy code and technical debt

Pin-down tests are the key to stabilizing your legacy Java code.

Refactoring Java, Part 1: Driving agile development with test-driven development

Refactoring makes your organization’s code simpler, which means fewer bugs and easier maintenance.

The joy of writing command-line utilities, Part 2: The souped-up way to find duplicate files

The brute-force method works—but a smarter algorithm improves performance by an order of magnitude.

Beyond the simple: An in-depth look at JUnit 5’s nested tests, dynamic tests, parameterized tests, and extensions

With the new JUnit Jupiter test engine, the popular framework is much more flexible than ever before and can be customized at will to fit your testing needs.

The joy of writing command-line utilities, Part 1: Finding duplicate files

Step-by-step creation of a small project that has practical utility

Five Code Review Antipatterns

Everyone cares about best practices, but worst practices can sometimes be more illuminating.

JUnit 5.6 Makes Testing Easy with New Features

New features such as the ability to define test execution order and run tests in parallel make this an important release.

How to Test Java Microservices with Pact

Microservice applications present special testing challenges.

Migrating from JUnit 4 to JUnit 5: Important Differences and Benefits

Improvements and new features make JUnit 5 compelling.

Testing HTML and JSF-Based UIs with Arquillian

How to use the testing framework to handle pure HTML, JSF, PrimeFaces, and Ajax in all major browsers

Know for Sure with Property-Based Testing

How do you test your code against thousands of values?

Arquillian: Easy Jakarta EE Testing

How to use the Arquillian framework to test Jakarta EE applications

Unit Test Your Architecture with ArchUnit

Discover architectural defects at build time.