Testing Framework Extraction - Next Steps

Testing Framework Extraction - Next Steps

As there was quite a lot of discussion around the first step of the testing framework extraction, I wanted to discuss the next steps with you and figure out some of the details together. On my list is currently:

  1. Clean-up testing framework parts
    1.1. Are the right files in the testing framework, are there other files that should be included?
    1.2 Files like the UnitTests.xml / Bootstrap.js etc. are currently mainly provided for convenience and as example even though these are mostly for the core - keep those in the testing framework for documentation purposes or move back to the core?
    1.3 Introduce src and res folders for distinguishing between code and resource files.
  2. Namespace - Currently the namespace is TYPO3/CMS/Components/TestingFramework
    2.1 Remove the CMS part?
  3. Subtree split: TestingFramework stays part of the Core Repository and will be split as own package regularly as part of the release process or will be splitted once and moved to an own repository.
  4. Release as composer package only or as composer package and typo3 extension?

Remarks and notes

I hope I did not forget anything from the many discussions, if so, I’m sorry and feel free to add it here. Looking forward to your opinions.

As the next stab phase draws near, I’ll change the closing date to a bit shorter timeframe, so I can get most of the things done before the release.

Organizational

Topic Initiator: Susanne Moog

1 Like

1.1: We’ll see. Main approach should be: “add what is really useful, skip else”. I’d just keep what has been extracted for now, and maybe add more later if useful.

1.2: Keep UnitTests.xml as example and boilerplate within the extracted framework: Many extensions can just use this set of parameters unchanged.

1.3: I’d try to streamline the naming and location towards our existing conventions as far as possible: Use Classes and Resources folders. This however may raise some headaches for the acceptance tests, the path finding in codeception is somehow funny.

2: Yes. I’d prefer to move “TYPO3\CMS\Components\TestingFramework” towards “TYPO3\Components\TestingFramework”

3: I’d prefer to not have the components directory directly in the core but to split it once and move to an own repository within github.com TYPO3 space. Same goes for similar “extractions” that may follow, like maybe the cache framework.

4: No opinion here.

1.2 IMHO examples should go to an explicit examples folder. There core should also act as primary documentation on how to use the testing framework.
1.3 Yes, please. Any chance that this might be used outside the TYPO3 community? If yes, then stay with src and res, otherwise use Classes and Resources as suggested by lolli.

  1. IMHO only after extraction to an own package (if at all). The namespace seems fine enough.

  2. I am in favor of large unified code bases and subtree split once needed. This allows for easier refactoring and makes sure that all code stays in sync. This of course assumes that the code will be maintained mainly be the existing contributors. However this discussion should be moved to an own topic and decided once and for all.

  3. Only as composer package. We should encourage developers to use proper tooling. A little tread here and there is a good thing.

This topic was automatically closed after 9 days. New replies are no longer allowed.