Test Suite Document Examination for Multi-Tenant
We need to update at least Test Suite 1 to 6, 24, 25, 28, 29, and TC 30.2 for testing the ‘Multi-Tenant’ behaviors. Also, we need to add a new Test Suite for the ‘Tenant' and its business context relationship management.
Across the entire test documents, the term ‘OAGi/OAGIS Developer' should change to ‘Standard Developer’.
TC (Test Case) 1.2 (Score/docs/test_cases/TestSuite1.md at develop · OAGi/Score) and TC 3.1 (Score/docs/test_cases/TestSuite3.md at develop · OAGi/Score) stated that each score users would have a different menu items by assigned roles due to the access restriction of Score functionalities. It needs to take account into the ‘Admin’ role and the ‘Multi-Tenant’ option.
The target objectives of All TCs in TS (Test Suite) 2 (Score/docs/test_cases/TestSuite2.md at develop · OAGi/Score) should be pointing to ‘Admin’ role, not ‘Developer' role.
TC 5.3 (Score/docs/test_cases/TestSuite5.md at develop · OAGi/Score) explains all test assertions about business contexts. It may need to have additional assertions for ‘Multi-Tenant’ option.
Some test cases in TC 5.5 (Score/docs/test_cases/TestSuite5.md at develop · OAGi/Score) and TC 28.2/28.3 (Score/docs/test_cases/TestSuite28.md at develop · OAGi/Score) have assertions in regard to the User Extension mechanism. These test would fail if ‘Multi-Tenant’ option is activated because the functions for creating a ‘User Extension’ disallowed in ‘Multi-Tenant’ environment. Thus, we either skip to execute these test scripts if the ‘Multi-Tenant’ option is activated, or check the disability of the ‘User Extension’ function.
TS 24 and 25 contain the main test cases for testing BIE abilities including ‘Reuse BIE’. These cases need to be updated for ‘Multi-Tenant’ environment.
<serm>Here is my thought. </serm>
Since there is a multi-tenant switch and @Jim Wilson Jim wants to release multitenant mid Jan. And I notice that @Jim Wilson has turned off a lot of functionality at this time in the multi-tenant mode at this time. I think it is best to keep the multi-tenant branch separate and only write test scripts for that branch, which at this point seems to be mainly about a) end users can manage BIEs appropriately and b) that admin users can manage users/tenants appropriately.
So if this strategy were to be adopted, we will want to change the branch name from develop
to multi-tenant
. For the test cases/scripts, just add the specifics about multi-tenant to them. I think it should be fine to simply add Test Suites/Cases/Scripts necessary for multi-tenant and leave the current Test Suites/Cases as-is (and we rewrite these tests we pre-condition them with the single-tenant deployment).
Since a Score instance is deployed either single-tenant or multi-tenant mode, I guess going forward the test scripts have to be executed two times when both modes share the same code base. To have a single code base for test cases/scripts, they will have to have pre-conditions (if-statement) for behaviors specific to the multi-tenant or vice versa. But there must be a way to interrogate the application from the UI about its deployment mode to facilitate such pre-condition test.