Description
Is your feature request related to a problem? Please describe.
The current version is fairly stable. However, refactoring is necessary as the internal implementation is not clean. However, since the code changes during refactoring, bugs may occur and the program may become unstable.
Therefore, it would be a good idea to write test code based on the current behavior so that the behavior can be verified and then proceed with refactoring based on this.
This issue should be addressed before other refactoring-related issues.
Describe the solution you'd like
Add unit tests and integration tests. And we use github actions to automatically conduct continuous testing.
Additional context
Add any other context or screenshots about the feature request here.
We still need to think more about how to write the integration test logic.