
Dear software developers and testers! We bring to your attention a series of articles on the organization of testing and developing applications in a cloud environment. This cycle includes the following articles:
- Free Windows Azure capabilities for MSDN subscribers: how to activate and start using?
- Developing and testing applications in the cloud environment of Windows Azure
- Cloud development and testing scenarios
- Development and testing on open technologies in the cloud using the example of Node.js, Riak, Ruby on Rails and dozens of others
Any MSDN subscriber can benefit from benefits, gratuitous credit, and significant discounts on the cloud power of
Windows Azure . Learn more about the benefits of MSDN subscriptions in this article.
In this article, we will look at how to use an MSDN subscription to organize the development and testing process in the cloud.
Development and testing at their facilities
Any organization or individual developer building applications needs a separate development and testing environment. Developers need pre-installed tools, and the test environment should be able to recreate the world in which the application should be deployed. Considering the price and time required to deploy physical servers, it is becoming increasingly popular to use virtual machines to build a test environment. And if so, why not run these virtual machines in the cloud?
')

When organizing development and testing on their own facilities, companies often face the following difficulties:
- limited budget for the acquisition, deployment and maintenance of servers and other equipment;
- limited budget for licensing server and other software required for the test environment;
- competition for virtual machine resources within the company between different teams and individual developers;
- reduced and often lost flexibility of the test environment for developers;
- difficulties with conducting real-world tests for scaling the application.
Development and Testing in the Cloud
There is a simpler way to organize an environment for development and testing. Developers or IT administrators can use the Windows Azure portal to create virtual machines in the cloud on demand.
These virtual machines are offered by the Windows Azure infrastructure services. Developers can use their own virtual machine images as plain VHD files (virtual hard disks) or use VHD files already available in Windows Azure with different pre-configured environments based on Windows Server and Linux.
Once such a virtual machine is created in the cloud, developers and testers can start using it to build and test new applications, customizing and modifying the virtual machine as required.
Why is it better to test in the cloud? There are two answers to this question:
low cost and
speed. Virtual machines in Windows Azure are created in a couple of minutes and immediately accessible to their users, while a similar process in companies' data centers can take several days or even weeks. In addition, when using Windows Azure and the benefits of a MSDN subscription, companies or individual developers pay for resources with
per-minute billing and 30% discounts on computing power and up to 97% on software licensing! This significantly reduces costs, as any virtual machine that has become unnecessary can simply be stopped and it will stop spending the company's money.
Moreover, having access to a
gallery of ready-made images of virtual machines, for example, with pre-configured Windows Server, SQL Server, SharePoint, BizTalk and
hundreds of images of Linux-based environments, developers can quickly get ready and start building and testing applications in minutes.
In addition to using virtual machines to build test environments, company developers can use other Windows Azure cloud services to quickly develop applications that usually take a long time to deploy at their facilities. Examples of such ready-to-use cloud services are in-memory caching service or NoSQL data storage or relational storage as a service. Usually, developers and testers need time and licenses for the appropriate software to deploy such services in their company. Using Windows Azure and the benefits of MSDN subscriptions, including free licensing of Microsoft servers for any number of virtual machines, companies can bypass these difficulties and provide their employees with a friendly and fast testing environment.

When organizing development and testing based on the Windows Azure cloud platform using an MSDN subscription, companies receive the following benefits:
- Quick product entry into the market. Flexibility in development and testing, no waiting for IT tasks, equipment supplies or availability of capacity for testing.
- Price. Lack of and elimination of capital expenditures when accessing a test environment in the cloud that scales better than your own.
- Use familiar tools . The ability to use the same tools for development and testing in the cloud, which were used earlier to organize a test environment in your enterprise.
- Better testing with the “infinite” cloud. Building large test environments to test real-world situations and workloads, including peak situations, without any competition within the company for resources.
- Isolation of production servers . Prevention of the influence of the development and testing process and test applications on servers operating in commercial operation in the company. Even virtualized test servers within a company can affect network sharing and / or server performance in commercial operation.
- Access from the cloud to existing facilities in the company . The ability to organize secure network communications between infrastructure in the cloud and at the enterprise level through Windows Azure virtual networks.
- Accommodation in any place without lock-in . Placement of virtual machines in the cloud and in their environment without restrictions or lock-in from the Windows Azure cloud.
Post-development and testing
Once the product is developed, tested and ready for operation, companies are able to launch it both on their own capacities and on those in the Windows Azure cloud. In this case, the process of moving the application is very simple. Since Windows Azure virtual machines use the same format (VHD) as Windows Server Hyper-V virtual machines, this means that if the virtual machine is running in Hyper-V, then it will work in Windows Azure and back. In fact, the Windows Azure platform is built on the same foundation as Windows Server 2012!
This feature is unique to Windows Azure. Other vendors may require you to convert your local virtual machines to a proprietary format, which makes it difficult to reverse the conversion and transition.

If your virtual machine hosting environment does not work on Hyper-V, then using Microsoft Virtual Machine Converter (MVMC) Solution Accelerator tools you can easily convert various virtual machine and disk formats to Hyper-V formats.
What about management? Together with the use of the Windows Azure portal, companies can use the System Center 2012 Management Console and App Controller to manage all resources both at the enterprise level and in the cloud from a single point. Using these tools, migrating virtual machines to the cloud is even easier and more intuitive.
useful links
Below you will find links to resources that will help you in using the Microsoft cloud platform:
And if you are already developing on Windows Azure or want to find the developers of your service, visit
appprofessionals.ru .
We will be happy to answer your questions at
azurerus@microsoft.com . And we are waiting for you in the
Windows Azure Community on Facebook . Here you will find experts (don't forget to ask them questions), photos, and lots and lots of news.
Video recordings of Windows Azure Summit reports and video interviews that were conducted during a large cloud conference. DevCon 2013 Windows Azure conference talks you
can find here .
Announcement! On August 23 at 11:00, we invite you to a fifteen-minute webinar, during which we will tell you about the benefits and scenarios of development and testing in the cloud, show how quickly and easily set up the environment for testing in Windows Azure.
DetailsAnother event: Webinar "Testing software using Visual Studio and Windows Azure"We invite you to a free two-hour webinar on September 17 at 14:00 on the topic "Software Testing with Visual Studio and Windows Azure." We will discuss the issues of ensuring the quality of applications using the tools of Visual Studio, as well as the effectiveness of the process of developing and testing software in the Windows Azure cloud.
Read more