Differences between revisions 6 and 7
Revision 6 as of 2009-04-22 04:42:23
Size: 2412
Editor: 218-214-45-58
Comment:
Revision 7 as of 2009-04-22 04:48:35
Size: 2789
Editor: 218-214-45-58
Comment:
Deletions are marked like this. Additions are marked like this.
Line 46: Line 46:
= Scope of Testing =

It's important to define what and can be and what cannot be tested.

The scope of the framework will be:

 * to check that each package can be installed on all the relevant platforms
   using the setup.py script

 * to run the built in tests within the package

 * to check that the package can be de-installed on the relevant platforms

 

Introduction

One of the big challenges for Python going forward is addressing all the different platforms that packages are destined for.

Typically, the seem to include:

  • Windows
  • Mac
  • *nix

To complicate the problem, there are now many versions of each operating system.

Multiply those two combinations by all of the versions of Python that already exist (not to mention the ones coming) and we start to that we are heading into complexity.

The most efficient way to address the problems of multiple packages on so many different versions of python and on so many operating systems is to employ server farm virtual environment building infrastructure.

In simple terms, we need to build all the packages that exist for Python on a daily basis on all of the environments and report any issues back to the registered maintainers.

Fortunately, Google and Amazon web services to name just two, offer commercial virtual server farms that could be employed to do the above build process of all the python packages.

Python scripts could then be developed utilising the "test" frameworks to supervise the build on each and every platform.

With this basic structure, a daily building/testing infrastructure working across the different versions of python and operating systems, could easily become a reality.

Server Farm Virtual Environments

My experience with cloud computing environments is limited to Amazon Web Services. I understand that Google and others may offer a comparable service.

At present they offer virtual environments for both Windows and Linux. These can be seen on these links:

One challenge will be to find an equivilent service that offers Mac Virtual Machines in a server farm.

Test Scripts

A test script will be developed that will cycle through all the packages on pypi, download the package and build it on all available platforms.

The results of the build can then be made available via some sort of web delivery system. Describing on which platforms the builds were successful and not.

In the past, it has been difficult for developers to test on all platforms.

These facilities are bound to improve overal code quality across the python universe.

Scope of Testing

It's important to define what and can be and what cannot be tested.

The scope of the framework will be:

  • to check that each package can be installed on all the relevant platforms
    • using the setup.py script
  • to run the built in tests within the package
  • to check that the package can be de-installed on the relevant platforms

Distutils/TestingInfrastructure (last edited 2009-04-22 23:02:13 by 115)

Unable to edit the page? See the FrontPage for instructions.