dc.description.abstract | In today′s society, the widespread adoption of software applications and the
increasing complexity of software architectures have made ensuring software
development quality an indispensable part of technical teams. Apart from working
closely with testing teams, writing comprehensive unit tests has become a crucial
skill for developers during the development process. This demonstrates developers′
sense of responsibility towards code quality and enhances code maintainability and
stability. Test coverage is often used by teams to measure the quality of code
delivered by developers, representing the extent to which different test cases cover
the code. A high coverage rate means more code is tested, serving as the primary
line of defense against potential system vulnerabilities and reducing the likelihood
of introducing errors in existing functionalities due to code changes. However,
maintaining a high level of test coverage in systems involving multi-person
collaboration is challenging. Ensuring that every code change is promptly reflected
in tests is a challenge that teams must collectively address.
GeekyNote is an innovative knowledge management application platform
developed by our laboratory, aimed at enhancing the efficiency of code and technical
document management. Through GeekyNote′s unique label functionality, users can
easily achieve bidirectional linking between code and technical documents,
facilitating knowledge transfer and maintenance.
This paper combines the Continuous Integration (CI) process with test data
generated by current testing tools, proposing two novel label types: "Branch Test
Uncovered Label" and "Latest Test Uncovered Label". Applying these tag types in
GeekyNote effectively addresses challenges in maintaining project test coverage,
diminishing test case effectiveness with iterative requirements changes, and
difficulties encountered in writing test cases across different branches in today′s
iii
collaborative development scenarios. This study not only improves testing
efficiency and accuracy but also provides development teams with a more efficient
and reliable solution. | en_US |