- Cluster Test Cases
Cluster Test Cases¶
Below is a list of cluster test cases to be executed by one or more members of the team. It is referenced by the testing page for clustering.
Cluster configuration tests (Verify agents run on systems as configured)¶
agents only, round robin test¶
| Purpose | Verify only agents run jobs using round robin load balancing |
|---|---|
| Dependencies | must be tested in a cluster w/at least 2 agent systems |
| Step | Action | Expected Results |
|---|---|---|
| 1. | stop scheduler with /etc/init.d/fossology stop | scheduler should do a graceful shutdown |
| 2. | edit [HOSTS] section of fossology.conf file to specify agents only | example: griphook = griphook /usr/local/etc/fossology 10 pigwidgeon = pigwidgeon/usr/local/etc/fossology 10 |
| 3. | edit /etc/init.d/fossology to increase log file verbosity | SCHEDULEROPT="--daemon --reset --verbose=952" |
| 4. | start scheduler with /etc/init.d/fossology start | scheduler should start in background with no errors or warnings in the log file (/var/log/fossology/fossology.log); log file start banner should indicate "verbose: 952" |
| 5. | Start several jobs; a small upload with several analysis will do the trick | observe and verify in the log file that jobs are started on agent systems only in a round robin fashion example: 2012-02-07 12:41:25 scheduler [25509] :: Starting JOB[1].wget_agent... 2012-02-07 12:50:59 scheduler [25509] :: Starting JOB[2].ununpack... 2012-02-07 12:51:37 scheduler [25509] :: Starting JOB[3].adj2nest... 2012-02-07 12:51:37 scheduler [25509] :: Starting JOB[4].copyright... 2012-02-07 12:51:37 scheduler [25509] :: Starting JOB[5].nomos... 2012-02-07 12:51:37 scheduler [25509] :: Starting JOB[6].pkgagent |
Cluster functional tests¶
Upload from file¶
| Purpose | Verify upload from file works in a cluster |
|---|---|
| Dependencies | must be tested in a cluster w/at least 1 agent system |
| Step | Action | Expected Results |
|---|---|---|
| 1. | Click on the top level "Upload" pull down menu & select "From File" | UI should display "Upload a New File" page |
| 2. | Complete steps 1-5 on the page, supplying a file on your local system; click the "Upload" | page should refresh with message at the top indicating a job has started to upload your request with a link to view the job status |
| 3. | click on the upload link for your job | UI should display "Show Jobs" page with your requested upload & 2 jobs: ununpack & adj2nest |
| 4. | When all 2 jobs are completed, click the job # in the far left to view the log files for each | verify all 2 jobs ran without any fatal errors |
| 5. | Return to the show jobs page and click on the upload name to browse | UI should display your upload in the "Browse" page |
Upload a file using "Upload from URL"¶
| Purpose | Verify a file can be uploaded using Upload from URL in a cluster |
|---|---|
| Dependencies | must be tested in a cluster w/at least 1 agent system |
| Step | Action | Expected Results |
|---|---|---|
| 1. | Click on the top level "Upload" pull down menu & select "Upload from URL" | UI should display "Upload from URL" page |
| 2. | Complete steps 1-4 on the page, supplying a valid URL to a file; click the "Upload!" button at the bottom of the page | page should refresh with message at the top indicating a job has started to upload your request with a link to view the job status |
| 3. | click on the upload link for your job | UI should display "Show Jobs" page with your requested upload & 3 jobs: wget_agent, ununpack & adj2nest |
| 4. | When all 3 jobs are completed, click the job # in the far left to view the log files for each | verify all 3 jobs ran without any fatal errors |
| 5. | Return to the show jobs page and click on the upload name to browse | UI should display your upload in the "Browse" page |
Upload a directory and it's contents using "Upload from URL"¶
| Purpose | Verify a directory and it's contents can be uploaded using Upload from URL in a cluster |
|---|---|
| Dependencies | must be tested in a cluster w/at least 1 agent system |
| Step | Action | Expected Results |
|---|---|---|
| 1. | Click on the top level "Upload" pull down menu & select "Upload from URL" | UI should display "Upload from URL" page |
| 2. | Complete steps 1-4 on the page, supplying a valid URL to a directory containing at least 2 items; click the "Upload!" button at the bottom of the page | page should refresh with message at the top indicating a job has started to upload your request with a link to view the job status |
| 3. | click on the upload link for your job | UI should display "Show Jobs" page with your requested upload & 3 jobs: wget_agent, ununpack & adj2nest |
| 4. | When all 3 jobs are completed, click the job # in the far left to view the log files for each | verify all 3 jobs ran without any fatal errors |
| 5. | Return to the show jobs page and click on the upload name to browse | UI should display your upload in the "Browse" page |
"Upload from URL" works with wildcards¶
| Purpose | Verify wildcards work with Upload from URL in a cluster |
|---|---|
| Dependencies | must be tested in a cluster w/at least 1 agent system |
| Step | Action | Expected Results |
|---|---|---|
| 1. | Click on the top level "Upload" pull down menu & select "Upload from URL" | UI should display "Upload from URL" page |
| 2. | Complete steps 1-4, 5 and/or 6 on the page, supplying valid values for each; click the "Upload!" button at the bottom of the page | page should refresh with message at the top indicating a job has started to upload your request with a link to view the job status |
| 3. | click on the upload link for your job | UI should display "Show Jobs" page with your requested upload & 3 jobs: wget_agent, ununpack & adj2nest |
| 4. | When all 3 jobs are completed, click the job # in the far left to view the log files for each | verify all 3 jobs ran without any fatal errors |
| 5. | Return to the show jobs page and click on the upload name to browse | UI should display your upload in the "Browse" page |
Upload from server¶
| Purpose | Verify upload from server works in a cluster |
|---|---|
| Dependencies | must be tested in a cluster w/at least 1 agent system |
| Step | Action | Expected Results |
|---|---|---|
| 1. | Click on the top level "Upload" pull down menu & select "From Server" | UI should display "Upload from Server" page |
| 2. | Complete steps 1-6 on the page, supplying the files or directory on the server; click the "Upload!" button at the bottom of the page | page should refresh with message at the top indicating a job has started to upload your request with a link to view the job status |
| 3. | click on the upload link for your job | UI should display "Show Jobs" page with your requested upload & 2 jobs: ununpack & adj2nest |
| 4. | When all 2 jobs are completed, click the job # in the far left to view the log files for each | verify all 2 jobs ran without any fatal errors |
| 5. | Return to the show jobs page and click on the upload name to browse | UI should display your upload in the "Browse" page |
One-shot nomos¶
| Purpose | Verify one-shot nomos works in a cluster |
|---|---|
| Dependencies | must be tested in a cluster w/at least 1 agent system |
| Step | Action | Expected Results |
|---|---|---|
| 1. | Click on the top level "Upload" pull down menu & select "One-Shot Analysis" | UI should display "One-Shot License Analysis" page |
| 2. | Select the file to Upload; and click the "Analyze!" button | page should refresh with message at the top indicating license analysis result |
One-shot copyright¶
| Purpose | Verify one-shot copyright works in a cluster |
|---|---|
| Dependencies | must be tested in a cluster w/at least 1 agent system |
| Step | Action | Expected Results |
|---|---|---|
| 1. | Click on the top level "Upload" pull down menu & select "One-Shot Copyright/Email/URL" | UI should display "One-Shot Copyright/Email/URL Analysis" page |
| 2. | Select the file to Upload; and click the "Upload and scan" button | page should refresh with message at the top indicating copyright/email/URL analysis result |
Verify upload files numbers¶
| Purpose | upload a tar with a known number of files in it (contents are known as well),verify files are in the gold and files repo's. |
|---|---|
| Dependencies | must be tested in a cluster w/at least 1 agent system |
| Step | Action | Expected Results |
|---|---|---|
| 1. | Click on the top level "Upload" pull down menu & select "Upload from URL" | UI should display "Upload from URL" page |
| 2. | Upload this package http://ldl.usa.hp.com/~laser/RedHat.tar; Query all the agents, click the "Upload!" button at the bottom of the page | page should refresh with message at the top indicating a job has started to upload your request with a link to view the job status |
| 3. | click on the upload link for your job | UI should display "Show Jobs" page with your requested upload & all jobs: wget_agent, ununpack & adj2nest, nomos, copyright, pkgagent, mimetype, buckets |
| 4. | When all all jobs are completed, click the job # in the far left to view the log files for each | verify all all jobs ran without any fatal errors |
| 5. | Check each job items | Debian 6.0.3 copyright 10292 items pkgagent 65 items nomos 10292 items ununpack 17272 items adj2nest 17272 items wget_agent 1 items |
| Ubuntu 11.10 copyright 10171 items pkgagent 65 items nomos 10171 items ununpack 16410 items adj2nest 16410 items wget_agent 1 items |
||
| Rhel6 copyright 10164 items pkgagent 65 items nomos 10163 items ununpack 16392 items adj2nest 16392 items wget_agent 1 items |
||
| 6. | Return to the show jobs page and click on the upload name to browse | UI should display your upload in the "Browse" page |