Wenrui Guo wrote:
Hi, MINA contributors
Hi Wenrui !
I'm wondering how do you ensure the code quality of MINA?
Hmmm... We are using unit tests (but this is far from perfect, as we
currently have only 250 tests for the whole project, which is far from
being enough).
My experience
shows those applications that rely on external resources(such as File,
Database, Socket) are hard to test with Junit, because of the complex
execution flow and behavior of these resources. Particularly during the
refactor phase, it's really very hard to guarantee that modfiied part
won't affect the rest.
The main issue will be with concurrency : it's really difficult to check
that the program behaves correctly under load, with many clients.
I'm willing to learn the successful code quality protection practice
from MINA developers. Could you introduce the process and principles in
brief ?
I'm afraid that MINA is not the perfect example of what should be done
in this area. The way we improve the 'quality' of MINA is mainly by
adding new unit tests as soon as we have fixes, patches, and new code.
There is no general strategy defined atm to test MINA as a whole.
If you are interested in this area, there is a hell of improvement we
can inject in MINA. The very first step would be to add unit tests for
the base structure, as a small bug there will propagate in all the project.
--
--
cordialement, regards,
Emmanuel Lécharny
www.iktek.com
directory.apache.org