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

Test Run Templates #28

Closed
jonherrmann opened this issue Aug 21, 2018 · 3 comments
Closed

Test Run Templates #28

jonherrmann opened this issue Aug 21, 2018 · 3 comments
Labels
EIP-approved EIP approved by the Steering Group Impl. EIP has been implemented and is ready for the next release. Doc might be incomplete (temp. label)
Milestone

Comments

@jonherrmann
Copy link
Contributor

jonherrmann commented Aug 21, 2018

ETF Improvement Proposal (EIP)

Background and Motivation:

This EIP supplements EIP #26 . In addition to the creation of test objects,
it should also be possible to pre-select a set of ETS and parameters and save
these as one element to execute all ETSs easily together. Furthermore a
test object should also be presettable.

Proposed change

Add a new model item Test Run Template item that possesses the following
properties:

  • an EID
  • a label
  • a description
  • a version
  • the language for reports
  • a parameter list to parameterize the ETS
  • a set of Executable Test Suites
  • a set of Test Objects (optional)

An example instance which would run all INSPIRE Metadata ETS could look like this:

<TestRunTemplate id="EID...">
  <label>Metadata (Technical Guidance 1.3)</label>
  <description>Run INSPIRE Metadata (TG 1.3) tests against the files on network drive X</description>
  <language>de-DE</language>
  <ParameterList>
    <parameter name="Files_to_test">.*</parameter>
  </ParameterList>
  <ExecutableTestSuite>
    <!-- Conformance Class 'INSPIRE Profile based on EN ISO 19115 and EN ISO 19119' -->
    <executableTestSuite ref="EID..."/>
    <!-- Conformance class 'Metadata for interoperability' -->
    <executableTestSuite ref="EID..."/>
  </ExecutableTestSuite>
  <TestObjects>
    <!-- Test Object with all test data on network drive X -->
    <testObject ref="EID..."/>
  </TestObjects>
</TestRunTemplate>

TestRunTemplates are Metadata items and can be stored like Tags as XML in the Metadata directory. They will be read and loaded like Tags during startup.

The user should be able to:

  • create a Test Run Template, by selecting one or multiple ETSs and optionally
    a Test Object
  • delete an existing Test Run Template
  • clone an existing Test Run Template and modify it
  • Select and execute one Test Run Template

Cloning an existing Test Run Template would create a clone with a new EID.
Changing an existing instance of a test run template should not be possible.
The cloning feature could be configured through a property to activate/deactivate it:

etf.testruntemplates.cloning.allow = true/false

The default would be true for organisation-internal workflows and false for public workflows.

The REST interface endpoint would be accessible via /v2/TestRunTemplates .

If the user selects Test Run Template in the user interface and no Test Object
has been pre-selected in the template, the user interface should ask which
Test Object should be taken.

A draft for the workflow and the web interface is described in EIP #27 .

This EIP is about the new REST interface which should be implemented before
the changes in the web interface and the implementation of
the complete workflow.

Alternatives

none considered

Funding

Full funding available.

Additional information

  • This EIP is backwards compatible with existing ETSs
  • For the sake of simplicity, only a single test object would initially
    be supported in a Test Run Template.
  • Since this is an addition to the existing interface, the main API version
    number v2 does not need to be increased, and existing external clients do not
    need to be modified
  • This EIP requires changes in the ETF core, the data storage and the web
    application
@jonherrmann jonherrmann added the EIP Improvement Proposal. Put up for discussion. label Aug 21, 2018
@jonherrmann
Copy link
Contributor Author

jonherrmann commented Sep 4, 2018

Todo:

  • describe configuration option to deactivate local Test Run Template cloning

@jonherrmann
Copy link
Contributor Author

Configuration description updated inline, see 'etf.testruntemplates.cloning.allow'

@cportele cportele added EIP-approved EIP approved by the Steering Group and removed EIP Improvement Proposal. Put up for discussion. labels Nov 22, 2018
jonherrmann added a commit to interactive-instruments/etf-core that referenced this issue Jan 21, 2019
Ref etf-validator/governance#28

Signed-off-by: Jon Herrmann <herrmann@interactive-instruments.de>
jonherrmann added a commit to interactive-instruments/etf-core that referenced this issue Jan 21, 2019
Ref etf-validator/governance#28

Signed-off-by: Jon Herrmann <herrmann@interactive-instruments.de>
jonherrmann added a commit to interactive-instruments/etf-core that referenced this issue Jan 21, 2019
Ref etf-validator/governance#28

Signed-off-by: Jon Herrmann <herrmann@interactive-instruments.de>
jonherrmann added a commit to interactive-instruments/etf-core that referenced this issue Jan 21, 2019
Ref etf-validator/governance#28

Signed-off-by: Jon Herrmann <herrmann@interactive-instruments.de>
jonherrmann added a commit to interactive-instruments/etf-spi that referenced this issue Jan 21, 2019
Ref etf-validator/governance#28

Signed-off-by: Jon Herrmann <herrmann@interactive-instruments.de>
jonherrmann added a commit to interactive-instruments/etf-bsxtd that referenced this issue Jan 21, 2019
Ref etf-validator/governance#28

Signed-off-by: Jon Herrmann <herrmann@interactive-instruments.de>
jonherrmann added a commit to interactive-instruments/etf-bsxds that referenced this issue Jan 21, 2019
Ref etf-validator/governance#28

Signed-off-by: Jon Herrmann <herrmann@interactive-instruments.de>
jonherrmann added a commit to interactive-instruments/etf-webapp that referenced this issue Jan 21, 2019
Ref etf-validator/governance#28

Signed-off-by: Jon Herrmann <herrmann@interactive-instruments.de>
@jonherrmann jonherrmann added the Impl. EIP has been implemented and is ready for the next release. Doc might be incomplete (temp. label) label May 23, 2022
@jonherrmann
Copy link
Contributor Author

Implemented in Version 2.1.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
EIP-approved EIP approved by the Steering Group Impl. EIP has been implemented and is ready for the next release. Doc might be incomplete (temp. label)
Projects
None yet
Development

No branches or pull requests

2 participants