We have base model and 10 clients-who use the base model with some specific modifications.
How can I set up the structure for automation?
Create testing scripts for all clients or have scripts for base model + add-on for a clients?
Thanking you in advance
I would consider how you are to maintain your scripts in relation to any software changes.
Given your scenario a base change in a script per client would require 10 updates where as the base script with client add on would require only one change.
A change to a client component will require the same amount of script maintenance either way.
I wish I undertstood what you are talking about. What is a base model??? Is that a specific tool name? I think we have the same sort of setup, but I'm not sure. If I understand what you need, I would say One base maodel for all clients and individual client folders for add-ons. This would make the most sense. Why duplicate base models???
The problem is not as complicated as it is made out to be. For any product you will have suites of test cases for groups of functionality. Most of that functionality reflects the base product (prior to customization) and the test objectives are simply to confirm that the functionality does work according to the product documentation that is used as your marketing collateral. You simply do not mess with that.
For individual customers you may have customized versions. This means (1) some of the base options will no longer work as specified, and (2) there are new options unique to that customer. Simply create a new test suite for (2), and record test failures expected due to (1). In fact, one of the test objectives would be to confirm that removed (or deactivated) functionality no longer works.
The whole idea of establishing test suites so the total complement of test scripts is organized is aimed to support this kind of testing process and to minimize the overhead of maintaining full sets of scripts with duplicated conditions. Simply put each suite in its own file and you can execute a test automation tool with only the applicable set of test suites as input.