Tests - py.test 2.0

About me: PrashantKumar

Mentor: AlexanderSchremmer

Repository: https://bitbucket.org/pkumar/pytest_moin

Project Diary: pkumar_diary

Project Plan and Work Flow: pytest2_projectplan

[Introduction]

Welcome to the Testing world of MoinMoin. This year in GSoC i.e. 'GSoC 2011', an idea was proposed about reimplementation of MoinMoin tests for pytest-2. Actually, it is not just reimplementation but a total refinement of tests including a better framework and testing mechanism. Following are the details of the project and the proposed plan of action.

Abstract: Re implement our tests for py.test 2.0. Improve test coverage. Do a sanity check on the tests. Rewrite tests.

[Benefits to the MoinMoin community]

1. Many new features and enhancements have been introduced to pytest-2.0. Implementation of MoinMoin tests for pytest-2.0 with less complicated tests and better testing framework would certainly result into an improved testing mechanism and error handling in MoinMoin.

2. Improving the test coverage will surely help in improvement of code quality of MoinMoin.

3. A detailed documentation on the work to help the contributers for further improvements on the work.

[Project Details]

This project is not just about porting MoinMoin tests over to pytest-2 but it has far greater goals. It is more about complete refinement of MoinMoin tests using pytest-2. The idea here is to provide a better testing framework for MoinMoin. It is also important that the new tests should be less complex and more efficient. Current version of MoinMoin i.e. moin 2.0 uses py.test 1.3.4. Implementing the test of MoinMoin for pytest-2 would require rewriting many tests due to numerous enhancements and new features introduced in pytest-2 which includes:

One other feature of the framework should be that it should be sustainable and support further improvements. It means that if the tests need to be implemented for pytest 2.4 or need to be modified after a year or something, only slight change in the fixers should be enough and an automated process would be taking care of implementation of respective fixers to the tests. Since, it would be quite troublesome to implement all the tests again and again with each new modification or new release of MoinMoin dependencies, this feature is quite necessary from development perspective.

[Milestones]

The project is planned to be split across following Phases:

Before Midterm Evaluation [May 23 - July 15]

1. [May 23 - May 30] Porting current tests of MoinMoin over to pytest 2.0

2. [May 31 - June 7] Working on different test issues of MoinMoin which includes:

3. [June 8 - June 15] Check for any new issue due to porting of tests over to pytest-2 and continue the work on fixing issues.

4. [June 16 - June 22] Work on deciding and finalizing new testing framework. This includes following steps:

5. [June 23 - June 29] Start the implementation of new framework for MoinMoin tests. Implementation of tests for new framework includes:

6. [June 30 - July 7] Implement following modules for the new test framework:

7. [July 8 - July 15] Finalizing the above modules which includes:

[Deliverables]

1. Improved testing framework of MoinMoin implemented for pytest 2.0 for following modules:

2. Tests with their major issues fixed. 3. A detailed tutorial till the current progress.

Before final Evaluation [July 16 - August 15]

8. [July 16 - July 23] Implementing remaining test modules for the new test framework i.e. :

9. [July 24 - July 31] Finalizing the above modules.

10. [August 1 - August 7] Working on improvement of test coverage which includes:

11. [August 8 - August 15] Last week of work would include the following:

[Deliverables]

1. Better and improved tests of MoinMoin implemented for py.test 2.0 having following features:

2. A detailed tutorial on the project work to help other contributers.

MoinMoin: pkumar_pytest-2 (last edited 2011-08-26 07:51:46 by PrashantKumar)