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

[ci] Add integration tests with real open-source projects #2693

Closed
adangel opened this issue Aug 2, 2020 · 2 comments · Fixed by #3861
Closed

[ci] Add integration tests with real open-source projects #2693

adangel opened this issue Aug 2, 2020 · 2 comments · Fixed by #3861
Assignees
Labels
an:enhancement An improvement on existing features / rules
Milestone

Comments

@adangel
Copy link
Member

adangel commented Aug 2, 2020

Is your feature request related to a problem? Please describe.
In order to find problems like #2663 earlier, we should have a way to run the latest PMD on real projects.
We already have pmd-regression-tester, but that does have some limitations (e.g. typeresolution) and has (maybe?) a slightly different goal (fine grained rule violation comparisons).

At least, we should see, when the real open-source projects fail to build (like smoke test), but better even would be to see, which rules behave different now and cause the builds to fail (or which stacktraces).

Describe the solution you'd like

  • Improve and use directly pmd-regression-tester
  • Consider running not all projects on pull-request, but only for pushes, or maybe we could even split this into a completely separate build task? So that it appears as a second commit verification in github.
    • we could also use github-action maybe?

Projects that can be used:

Describe alternatives you've considered
Have a separate project, e.g. pmd/pmd-it .

  • Add there some scripts to
    • clone one or more projects
    • modify the project to use the latest PMD snapshot
    • execute PMD on the projects as the projects themselves do
  • Configure travis to build this
  • Trigger the travis build after building the main repo pmd/pmd (e.g. via https://docs.travis-ci.com/user/triggering-builds/)
  • That would give us a smoke test at least - but nothing to analyze directly.

Additional context

@adangel adangel added the an:enhancement An improvement on existing features / rules label Aug 2, 2020
@linusjf

This comment was marked as off-topic.

@rsoesemann
Copy link
Member

@adangel if you need more than one Apex repo just use the top candidates on Github https://github.com/search?l=Apex&o=desc&q=apex&s=stars&type=Repositories They are all good candidates

@adangel adangel self-assigned this Feb 19, 2022
@adangel adangel added this to the 6.44.0 milestone Feb 19, 2022
@adangel adangel changed the title Add integration tests with real open-source projects [ci] Add integration tests with real open-source projects Mar 18, 2022
adangel added a commit to adangel/pmd that referenced this issue Mar 18, 2022
Refs pmd#2693

Dangerfile is copied from pmd/7.0.x and
adjusted slightly: autogen is used now for both
branches again.
adangel added a commit to adangel/pmd that referenced this issue Mar 24, 2022
@adangel adangel modified the milestone: 6.44.0 Mar 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
an:enhancement An improvement on existing features / rules
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants