QA testing for app-samba
This page contains the test sets for samba, app-samba, and related products. For more information on the QA process, please visit the Getting Started with Quality Assurance and Testing page. Each QA test set has a champion and individuals that have direct interest in testing this app. Active testers are listed here and should also be updated as a maintainer in the keywords section below:
- dloper
Getting Started
Fire up two ClearOS Professional/Business machines (one if you are only testing PDC functionality, in which case you can use the Community version) and a Windows workstation. If you are using virtualization to test, run a snapshot at a point where you would like to backtrack to (for example, if you are not testing the wizard, you could snapshot after the wizard is complete and before installing any apps).
Depending on what you are testing, modify the yum repos to the level of your test. For example, If you are testing before a release of a beta, you would want to enable the 'testing' repo to get the latest changes from the developers. If you are testing a release candidates or testing updates before a patch is to come out, you will want to enable updates-testing.
It is recommended that you tail (eg. 'tail -f /varlog/system') the following files to watch for progress within this app for testing:
- /var/log/yum.log
- /var/log/system
- /var/log/messages
Test Sets
Install
The app should install from the Marketplace. Check the /var/log/yum.log and note it in the Samba QA log.
Two install sets should be installed. You will need two virtual machines or two physical machines, or a combination of the two to fully test this app.
Configuration
This app should require the initialization of an underlying directory.
It should then initialize the directory. Watch the /var/log/system log for errors.
SID initialization
Once the directory is initialized, SID checks should be performed.
net getdomainsid net getlocalsid
These values should match for PDC configurations and BDC configurations. For example:
[root@server2 ~]# net getdomainsid SID for domain WORKGROUP is: S-1-5-21-3769993359-2004217502-2963353753 [root@server2 ~]# net getlocalsid SID for domain MYSERVER is: S-1-5-21-3769993359-2004217502-2963353753 [root@server2 ~]#
User SID and RID validation
Create a 2 users and 3 groups on the PDC. User A should be a member of Group 1 and 2. User B should be a member of group 1 and 3.
Next, run an LDAP dump and validate that the SID and RID combinations exists and contain the domain SID:
slapcat -n3|egrep "^sambaSID:|^uid:|^description: group"
uid: master$ uid: manager sambaSID: S-1-5-32-546 uid: winadmin sambaSID: S-1-5-21-401162309-975725866-2005006356-302 uid: nomembers uid: flexshare sambaSID: S-1-5-21-401162309-975725866-2005006356-351 uid: email-archive sambaSID: S-1-5-21-401162309-975725866-2005006356-352 uid: guest sambaSID: S-1-5-21-401162309-975725866-2005006356-353 sambaSID: S-1-5-21-401162309-975725866-2005006356-512 sambaSID: S-1-5-21-401162309-975725866-2005006356-513 sambaSID: S-1-5-21-401162309-975725866-2005006356-514 sambaSID: S-1-5-21-401162309-975725866-2005006356-515 sambaSID: S-1-5-32-544 sambaSID: S-1-5-32-545 sambaSID: S-1-5-32-547 sambaSID: S-1-5-32-548 sambaSID: S-1-5-32-549 sambaSID: S-1-5-32-550 sambaSID: S-1-5-32-551 sambaSID: S-1-5-21-401162309-975725866-2005006356 description: group1 sambaSID: S-1-5-21-401162309-975725866-2005006356-60000 description: group2 sambaSID: S-1-5-21-401162309-975725866-2005006356-60001 description: group3 sambaSID: S-1-5-21-401162309-975725866-2005006356-60002 uid: usera sambaSID: S-1-5-21-401162309-975725866-2005006356-2002 uid: userb sambaSID: S-1-5-21-401162309-975725866-2005006356-2004
Of particular note, the SID must match the domain SID! Meaning that the following command must come back without a result:
slapcat -n3|egrep "^sambaSID" |grep -v `net getdomainsid | awk '{ print $6 }'` | grep -v "sambaSID: S-1-5-32-5"
Icon
The icon for this app should match what is in this directory:
HTML
The HTML code should be sound throughout the test and not throw any errors. Pay attention to how the buttons and framing of the app line up in the interface.
On each of the pages in the app, perform a 'View Source' and copy and paste the output into an HTML validator:
Theme
Check through the widgets on the pages and see if you spot anything obvious that is presented in the layout.
Next, navigate to the 'view' section of the app in command line and review the php code for any 'echo' statements (or similar) which might be spitting out html in the views.
NOTE: developers will sometimes include echo statements to help them debug their code while in developments. Sometimes these conditional things are are forgotten during cleanup. An example would be:
echo "Something bad happened.";
Uninstall
App Overview
If you are a regular QA tester, you will need to complete the log entry for this app. Here is where you can vote to approve the code or reject it.