29.01.2013 Views

WebSphere Application Server V7.0: Concepts ... - IBM Redbooks

WebSphere Application Server V7.0: Concepts ... - IBM Redbooks

WebSphere Application Server V7.0: Concepts ... - IBM Redbooks

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Integration test environment<br />

After a successful build and regression test, the application is deployed to the<br />

integration test environment. This is the environment where the developers<br />

perform integration tests among all system components on a hardware and<br />

software platform that mirrors the production environment, although in a small<br />

size.<br />

Because the production environment is often not the same platform as the<br />

development environment, a guideline is to start testing on the target platform as<br />

early as possible in the test phase. This testing will help discover problems with<br />

incompatibilities between platforms (for example, hard coded folder paths such<br />

as C:\ versus /usr). The integration test environment is usually the first<br />

environment suitable for that.<br />

For small projects, the integration test environment can often be shared between<br />

different projects. But if the number of projects or developers is too large, it<br />

becomes difficult to manage. Usually no more that five to 10 developers should<br />

share a single integration test environment. If a developer needs to perform tests<br />

that might damage the environment, a dedicated environment should be used. If<br />

the machine has enough resources in terms of CPU and memory, using multiple<br />

<strong>WebSphere</strong> profiles can also be a good method to isolate different teams from<br />

each other. Using VMWare virtualization is another option. The development<br />

team manages and controls the integration test environment.<br />

System test environment<br />

The purpose of the system test is to verify that the system meets both functional<br />

and non-functional requirements. After the development team has tested the<br />

application in their own controlled environment, it is delivered to the system test<br />

team. When the application is delivered, the system test team deploys it using<br />

the instructions given.<br />

If the tests in the previous test stages have been less formal, a key aspect of the<br />

system test is formality. The system test team is responsible for verifying all<br />

aspects of the system and ensuring that it conforms to the specifications.<br />

Functional requirements include specifications such as determining whether the<br />

system execute the business rules defined, whether the user interface shows the<br />

right information, and so on. Non-functional requirements include capacity,<br />

performance, installation, backup, and failover requirements.<br />

The system test team completely controls the system test environment. The<br />

environment is usually a cut-down version of the real production environment, but<br />

with all the important components in place. If the production environment is a<br />

highly available environment with <strong>WebSphere</strong> clusters, the system test should<br />

also be set up with clusters to verify both application functionality and<br />

deployment routines.<br />

Chapter 8. <strong>Application</strong> development and deployment 299

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!