Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 4.0.0
    • Fix Version/s: 4.1.0 RC3
    • Component/s: CLI
    • Labels:
      None

      Description

      I have an integration test suite for the CLI [1]. It currently has about 20 tests, and has been very useful in testing that fixes on the CLI to give some confidence fixes do not introduce other defects.

      I originally started writing tests with java and junit. But jline hangs when testing the CLI in the same JVM as Junit. I next looked at using Java ProcessBuilder to execute the CLI, but that was unreliable and left lots of processes hanging around. I ended up with the Python and the pexpect library and wiremock for simulating the REST services.

      I can add some more instructions for adding new tests (e.g. recording REST calls with wiremock) when this branch gets merged in.

      The changes are contained in the branch: stratos-651-cli-test-suite [1]. In summary:

      • there are some changes to the CLI components pom.xml
      • there is a new src/test/python folder in the CLI component.

      There is a Jenkins build to prove the tests are able to run on maven [2].


      [1] https://git-wip-us.apache.org/repos/asf?p=incubator-stratos.git;a=commit;h=cb3a22e8c0a07027e6a90dd6923cce08122a7c15
      [2] https://builds.apache.org/view/All/job/Stratos-CLI-IntegrationTest-Branch-Build/

        Activity

        Hide
        snowch chris snow added a comment -

        Fixed with commit: 0f6cfd3fa361fdc627c49aa65dff9c0189ff4374

        Show
        snowch chris snow added a comment - Fixed with commit: 0f6cfd3fa361fdc627c49aa65dff9c0189ff4374

          People

          • Assignee:
            snowch chris snow
            Reporter:
            snowch chris snow
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development