Can’t Test Steps be installed outside the OpenTAP installation folder?
We have the following setup:
. OpenTAP is installed D:\OpenTAP
. With tap.exe we installed the package “Developer’s System CE”
. We have a folder D:\OpenTAP\Plugins, with some Test Steps underneath it.
. We start the D:\OpenTAP\Editor.exe
The Test Steps from \Plugins are immediately recognized by the Editor.
Let’s move the plugins to D:\Plugins and
update the Package Manager by adding the folder D:\Plugins,
restart the Editor.exe but the plugins are not found anymore.
Welcome to the OpenTAP community!
Just to clarify, when you move the plugins to D:\Plugins, did you move the .tappackage file or the dlls?
If you had moved the .tappackages to D:\Plugins, and added them as a source in Package Manager, it will show up in the Package Manager GUI.
You would still need to hit install for the plugin test steps and other items to show up in the Editor.
The Editor will only load plugins present in the installation directory and subfolders.
Hope this answers your question. If not, please feel free to update with more details!
I just moved the full \Plugins folder.
Just to be clear, I’m still in the development phase at the moment, so I haven’t created a package.
So, in the \Plugins folder we only find dll’s, the output of a compiled VS project.
What do you mean by “you would still need to hit install for the plugin test steps…” ?
OpenTAP will only search for plugins inside of its own installation directory. Adding a directory to the Package Manager allows you to install plugins from that directory (as though it was a package repository), but it does not affect where OpenTAP looks for plugins.
OpenTAP does support adding additional directories to scan for plugins. This does not have GUI support because it is not exactly a common use case, so it requires using the C# API through a plugin, and it is not exactly recommended either:
When you save a testplan in the Editor, it determines the plugin dependencies of the test plan based on the source of the types you are using. For example, if you use a test step from your plugin, the test plan will depend on your plugin. But if you are using D:\Plugins as a plugin source, then OpenTAP will be unable to detect which package your plugin steps originate from because they are not properly installed through a package.
I’m not really sure what you wish to accomplish. Can you describe your use case?
We just wanted to install our Test Steps, with source code, in a different folder, separate from the OpenTAP installation folder. This has more to do with our internal policy about installing software on production systems…
From code I was just testing if we could do something with the PluginManager.DirectoriesToSearch, but your answer is clear.
I can reproduce this issue. If I start the process like Editor.exe --search 'C:\plugins' it works, but if I start it like tap.exe editor --search 'C:\plugins' it doesn’t. This is a bug on our end. I will file a bug report. In the meantime you can launch Editor.exe directly.