I am seeing posts regarding what can be shared between two Katalon projects from year 2019, in this forum. Has there been any updates/enhancements to have other artifacts shared between two projects in current Katalon studio? Is it still true that only custom keywords can be shared across projects and not other artifacts as OR, Test Cases, Test Suites etc?
There has been no architectural change.
If you feel like to share codes (especially Test Objects) amongst multiple katalon projects A, B and C, you should merge these seperated projects into one project while introducing subfolders (“A”, “B” and “C”) in the “Object Repository” folder, the “Test Cases” folder and the “Test Suites” folder. You have to do it all manually. Katalon offers no build-in support for “merging projects”. You would have to rewrite your codes so that they cope with the new folder structures. You may also want to introduce a new subfolder named “Common” where you would locate the codes you like to share for “A”, “B” and “C”.
Here is a page titled “Test Artifacts Sharing”.
I guess that this “Import/Export test artifacts” feature was developed in the hope to be nice to users like you.
I personally have never used this feature. I don’t think it will work well in the end. — But Why?
The Import/Export test artifacts feature is principally a short cut of copy&paste operations of source codes across the project boundary. It provides no version numbering. Without version numbering, you will soon loose control of dependecies from a source project to a target project.
Imagine, you have a project named Common. And you have 3 projects A, B, C which share the artifact of the Common project. Recently you have updated the Common project. You copied&pasted the source from the Common project to one of A, B, C. Now you take an hour break for lunch. … You came back to your desk and … you will wonder to which project you need to copy&paste the source — A? B? or C? … You certainly did copy&paste to one of them, but you can not distinguish which. Without a well established version numbering, you would never be sure for the dependencies amongst projects.
I can imagine another difficulty. The Common project had 3Test Objects (TO1, TO2, TO3) that were already shared by the project A, B, C. Now you decided to DELETE the TO2. You did delete it in the Common project. You export the codes from the source project to import them into other 3 sub-projects. Eventually you will find that the TO2 (which should be removed entirely) is remaining there in the sub-projects. Thus you will have uncontrolled garbages; and you would loose the confidence of the projects quality.
Katalon Studio’s “Import/Export test artifacts” feature violates the “Don’t Repeat Yourself” principle. I think that this feature is not practical at all.
Thankyou so much for your reply. This was just a discovery/research exercise needed for my team, as we were coming across some functionality developed in one project, which we wanted to use in another project. Your explanation of no version numbering provided in Katalon for this feature and thus loosing control of dependencies from a source to a target, is very helpful. Thankyou again!
Just for your reference, the following post shows my thought about sharing test artifacts in Katalon:
GitHub Packages allows you to set up public and private Maven repositories.