Uploaded image for project: 'Apache NiFi'
  1. Apache NiFi
  2. NIFI-1365

Support Groovy unit tests

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      I posed a question on the dev mailing list about community enthusiasm for Groovy unit test support.

      I am considering writing unit tests in for new development/regression testing in Groovy. There are numerous advantages to this [1][2] (such as map coercion, relaxed permissions on dependency injection, etc.). Mocking large and complex objects, such as NiFiProperties, when only one feature is under test is especially easy. I plan to write “Java-style” unit tests, but this would also make TDD/BDD frameworks like Spock or Cucumber much easier to use.

      I figured before doing this I would poll the community and see if anyone strongly objects? In previous situations, I have created a custom Maven profile which only runs when triggered (by an environment variable, current username, etc.) to avoid polluting the environment of anyone who doesn’t want the Groovy test dependencies installed.

      Does anyone have thoughts on this?

      [1] http://www.ibm.com/developerworks/java/library/j-pg11094/index.html
      [2] https://keyholesoftware.com/2015/04/13/short-on-time-switch-to-groovy-for-unit-testing/

      The response was positive.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            alopresto Andy LoPresto
            alopresto Andy LoPresto
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment