You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@dubbo.apache.org by Albumen Kevin <al...@apache.org> on 2021/05/18 09:02:59 UTC

[DISCUSS] A new way to guide contributors to help perfect samples

Hi community,

Thanks to Github Actions[1], we now have code stability tests about unit
tests and integration tests.

Unit tests are based on the test package in apache/dubbo. For current, the
coverage rate is less than 60%[2],
and in Dubbo 3.0 is even worse. It is clear that unit tests are important
for us to make sure Dubbo 3.0 is production
available. So it is desperately in need to improve coverage rate of core
code like `Cluster`, `Protocol` and so on.

Integration tests are based on the apache/dubbo-samples[3] project.
dubbo-samples is not only a guide for users to
know how to use the features in Dubbo, but also we can verify these
features in the latest code. We can also make sure
that the changes will not affect users to use these features. There is a
problem that the samples in dubbo-samples can
not cover most of the features listed in dubbo-website[4], and even there
are a lot of features we have posted in dubbo-website.
Also, due to integration tests, we can verify some boundary conditions at
project level, though these cases are not recommended
for uses and we can move them to a single package, marked only for testing.
These work can improve our confidence when
publishing a new version.

For the community, I have noticed that there are a lot of people who want
to contribute to open source projects but do not
know how to do it. Maybe we can take this opportunity to guide them how to
help Dubbo. We can make up a project like the
Samples Project, and list detailed jobs marked with different levels and
teach new contributors how to achieve it step by step.
For contributors, they can understand the working mechanism in-depth when
creating samples or test cases, this requires one
understand it first. For Dubbo, we can improve the unit tests and
integration tests and make Dubbo more robust.

Do you have any suggestions?

[1]
https://github.com/apache/dubbo/blob/master/.github/workflows/build-and-test.yml
[2] https://app.codecov.io/gh/apache/dubbo
[3] https://github.com/apache/dubbo-samples
[4] https://dubbo.apache.org/en/docs/v2.7/user/examples/

Thanks,
Albumen Kevin