Last week, Apple announced a number of exciting new products at WWDC, including iOS7 and OS X Mavericks. But some of Apple’s most important announcements slipped below the radar – announcements that will impact both developers and testers. Let’s take a look at a few of the exciting thing Apple announced that are going to change how you build and test your software.
Let’s start with the first big piece of news: continuous integration. Apple’s new continuous integration tool give developers a new way to automate build processes and make sure that all the important steps of a build are executed. Apple has done this by creating a new kind of process called a “bot,” which can be instructed to automatically run static analysis, unit tests, and archiving activities.
Apple’s other big announcement was a new tool that can move the build process to a remote server running OS X Mavericks. That means that you can offload the long tedious build process (including all the activities of the bots) to a remote server, giving you the power to work on other tasks in the mean time. If a build or test fails, you’ll see all the details in your local copy of Xcode. The remote build machine can be configured to run builds on demand, scheduled builds (e.g. nightly builds), or both.
Along with the bots and continuous integration tools, Apple has developed a completely new unit testing system called Test Navigator. Developers will be able to create unit tests right within Xcode and then have those tests executed by bots. If the tests fail, they’ll be able to review the tests together with the relevant portions of their code, side by side.
Over the past few years, Apple began moving away from the standard aspect ratios they introduced with the original iPhone, and there’s every indication this trend will continue. The downside of this proliferation of screen sizes is that app developers will have to work harder and harder building custom interfaces for each unique screen size.
With Xcode 5, Apple is launching a new tool called Auto Layout that they believe will help improve this problem. Auto Layout helps developers build interfaces by automatically managing the layout of items on the screen – moving components as the screen changes size so that everything fits neatly. This means that a single interface can easily adapt itself to a variety of screen sizes and shapes, giving developers the confidence their apps will work on the ever increasing number of devices.
Other features Apple announced last week include debug gauges (tools to see an app’s system utilization in real time) and source control. A more complete list can be found here.
Of course, we’re still in the early days of these new tools as Apple has just released the very first beta of Xcode 5. New features and improvements could still be on their way, and some of the existing features mentioned above could still be cut from the final release.
But judging from what we’ve heard about so far, this is a great time to be an Apple developer. With so many new tools, apps, and APIs, developers have an exciting road in front of them as they adopt Apple’s newest technologies.