Uploaded image for project: 'Talend Component Kit'
  1. Talend Component Kit
  2. TCOMP-472

Make good testing infrastructure for TCOMP

Apply templateInsert Lucidchart Diagram
    XMLWordPrintable

Details

    • Work Item
    • Resolution: Fixed
    • Critical
    • 0.0.1
    • None
    • None
    • None
    • All
    • GreenHopper Ranking:
      0|i0ypmj:
    • 9223372036854775807
    • Small

    Description

      Testing
      We already have common test code that makes sure images are properly setup, and messages are properly I18N-able.

      However, we can do a lot more. For example, we can have a standard means of creating a test schema which includes all supported data types. And standard means of preparing test data that conforms to this schema, and checking that data matches the schema. We can also have standard tests that handle all of the CRUD operations, and make sure the data is checked fully

      We can have standard methods to setup connections, so that a typical test case is only a couple of lines of code.

      For database tests, we could have a means of creating database tables using this test schema and populating them with data to be used by the tests. This can all be abstracted so that as we add a new data type of some other interesting field to test, it can be done in one place and automatically work in all derived tests.

      Refactor all tests looking for common stuff.

      Common test stuff can be put in test part of the API module. Schema related tests can to into Daikon. Hook up to sample schemas. See Ryan about this.

      Seb: Make sure the integration tests properly reflect the actual production environment. Currently some tests are ignored because of this.

      Attachments

        Activity

          People

            Unassigned Unassigned
            fupton Francis Upton
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: