Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fine-grained selective testing at a class-level granularity #4109

Open
lihaoyi opened this issue Dec 11, 2024 · 0 comments
Open

Fine-grained selective testing at a class-level granularity #4109

lihaoyi opened this issue Dec 11, 2024 · 0 comments

Comments

@lihaoyi
Copy link
Member

lihaoyi commented Dec 11, 2024

#4091 implements selective execution and testing at a granularity of mill build modules, but we should be able to do better.

  • We already have the ability to compute code signatures for JVM bytecode and do basic callgraph analysis, which we currently use for selectively invalidating targets in the build.mill file.

  • We should be able to apply the same bytecode analysis to classes and methods in the JavaModule and ScalaModule compile output, automatically determining which test classes within a module could potentially be affected by a code change and would need to be executed to validate it

This would provide much finer grained selective testing than the initial module-level implementation, and help greatly in messy real-world projects where the module structure is not as fine grained as it could be

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant