« Previous -
Version 234/237
(diff) -
Next » -
Current version
Mary Laser, 05/29/2012 06:03 pm
2.0-specific Test Suite¶
FOSSology test suite tracking for 2.0
Note for details on specific test cases, see Manual_Test_Cases
Component Tests (Candidates for Automation if Not Already Covered)¶
Module Tests¶
Common UI Components¶
nomos license and copyright verification tests¶
| Functionality to test |
Owner |
Status/Notes |
| nomos cli oneshots |
mark |
5 new functional tests for nomos: Nomos Functional Tests |
| verifyFoss23D1F1L.php |
mark |
This test and the tests below need to have an upload loaded first. There is no way to do that today without driving the ui. Or by rewriting the tests. |
| verifyFossDirsOnly.php |
mark |
|
| verifyFossI16L335U29.php |
mark |
|
CLI Tests¶
Basic Funtionality via the UI¶
Basic functionality¶
| Functionality to test |
Owner |
Status/Notes |
Post-Beta test status (Larry) |
| Homepage |
Larry |
done |
done cluster |
| Upload |
Larry |
done #861 #1365 |
done #1191 (not 2.0) |
| Jobs |
Larry |
done |
done |
| Search |
Larry |
done |
done |
| Browse |
Larry |
done |
done |
| Organize |
Larry |
Done |
done #1185 (not 2.0) |
| User Permissions |
Larry |
done User Permission function is not finished in my opinion, including ui and cli, firstly I need one user doc about this part, sencondly I do not think it is necessary to file all bugs about this part, I will be too much, execpt Admin almost each role has defects for now |
done |
| Admin |
Larry |
done |
done #1833 |
Please add tests as needed.
Web Site sanity checks¶
Basic FOSSology functionality based on the top menu items¶
RESTful UI test cases (in support of PTS requirement)¶
Install Tests¶
Install tests take two forms, source installs and package installs. Source installs are just that, the sources are checked out, utils/fo-installdeps is run, fossology is made, installed and fo-postinstall run. Tests are then run on the installed system.
Source Installs¶
For details on testing a source install in a cluster, see Cluster Testing below.
Package Installs¶
The package installs are automated by a php script. The script expects to be run on a Virtual Machine that was set up for package install testing. See Package Install Testing for details.
| Functionality to test |
Owner |
Status/Notes |
| test package installs |
mark |
Jenkins job is set up, will turn it on when packages are made/ready |
| Install Packages on Test Systems |
mark |
will install packages on 64 and 32 bit machines and stress test |
| Upgrade testing 1.4.1 -> 2.0 |
mark |
|
| Functionality to test |
Owner |
Status/Notes |
| verify agent.agent_rev gets bumped when we install a new agent |
Larry |
need an agent with a new version |
Cluster Testing¶
Install and Config Tests¶
Functionality¶
Cluster Ops¶
Stress Tests¶
| Test |
Owner |
Status/Notes |
Post-Beta test status (Mary) |
| upload a distro iso, e.g. debian, fedora, RH. |
vincent |
DONE |
DONE |
| Busy the system up with multiple large uploads. All should be processed with no failures in any agents. |
vincent |
DONE #1041 |
DONE |
| While large uploads are running and being processed, upload a smaller job and make sure it gets run in a resonable time |
larry(done) |
works great, small upload was process to completion and large upload continued to be processed. |
DONE |
| While jobs are running, delete other uploads and ensure they are processed when other jobs end. |
vincent |
DONE |
DONE |
| Run a number of uploads at once... pause some, change priorities, resume, cancel some |
vincent |
DONE #1041 |
|
| Delete a distro iso, testing delagent for big iso |
mark |
#1053 |
DONE |
Other items¶
Since the way clusters work in 2.0 has changed, here are some questions that can turn into test cases.
| Test |
Owner |
Status/Notes |
| Where are the agent logs in the repo? Db server? Web Server? or Agent machines? |
vincent |
|
| What happens to the agents on the agent machine when the scheduler is shut down? |
vincent |
|
| In a cluster with a separate web server (i.e. separate db server), stop the scheduler, does the ui report it stopped? |
vincent |
|
Performance Testing¶
A place holder
Concurrent User Testing¶
A place holder
Migration Testing¶
- install a cluster with FO 1.4.1 (using the 1.4.1 packages)
- upload and analyze some packages/distros to populate the db
NOTE: be careful in your selection of packages and the analyses run. you need enough to populate all the tables, but not so much that it takes too long to genarate results quickly; no more than a couple hours. I DO NOT recommend using a large iso.
- generate reports (nomos, buckets, copyright) and save as pdf or html
for 1.4.1 -> 2.0 migration test, I saved
Browse.htm (top level Browse menu)
Bucket Browser.htm (for debian-6.0.4-source-DVD-1.iso)
License Browser.htm (for debian-6.0.4-source-DVD-1.iso)
Copyright.htm (for debian-6.0.4-source-DVD-1.iso)
Created 3 Tag Namespaces; Manage Tag Namespace.htm(TagNS1, TagNS2, TagNS3)
Tagged a single file (Tag.htm) RedHat.tar/RedHat/amtu-1.0.2-2.EL4.ia64.rpm
Is this sufficient?
- upgrade cluster with 2.0 packages
edit /etc/apt/sources.list to comment out source for previous version and add an entry for the new version you wish to upgrade to.
On the server: as root, run the apt commands; sudo apt-get clean; sudo apt-get update; sudo apt-get purge fossology fossology-agents-single fossology-scheduler fossology-scheduler-single fossology-web-single
sudo apt-get upgrade fossology-db fossology-web fossology-scheduler fossology-common
sudo apt-get install fossology-ununpack fossology-copyright fossology-buckets fossology-mimetype fossology-delagent fossology-wgetagent fossology-nomos fossology-pkgagent
On the clients: as root, run the apt commands; sudo apt-get clean; sudo apt-get update; sudo apt-get upgrade fossology-common; sudo apt-get purge fossology-agents
sudo apt-get install fossology-ununpack fossology-copyright fossology-buckets fossology-mimetype fossology-delagent fossology-wgetagent fossology-nomos fossology-pkgagent
edit cluster config files: /etc/fossology/fossology.conf & /etc/fossology/Db.conf
- BEFORE generating 2.0 results, look at the 1.4.1 results in the newly upgraded 2.0 UI and verify against the html (or pdf) files save in step 3. The numbers should be identical.
- rescan the uploaded packages/distros with the 2.0 version of nomos
- verify that the 1.4.1 and 2.0 nomos results are similar. (For example, if 1.4.1 reports 1000 GPL_v2+ licenses, then the 2.0 number should be roughly the same though not necessarily identical).
Post-Beta Testing to get to RC1¶
Testing for RC2¶
Testing for RC3¶
- perform regression tests to exercise code changes made post-RC2
- Test substitution of "/" with "`" in ufile_name using this file as a test case: http://newbobg.ostt/~bobg/testfiles/testfiles.tar, fixed in branches/fossology2.0/fossology/src/ununpack/agent/utils.c, Completed by Larry
http://fossology.svn.sourceforge.net/viewvc/fossology/branches/fossology2.0/fossology/src/ununpack/agent/utils.c?view=markup&pathrev=5877 &
http://fossology.svn.sourceforge.net/viewvc/fossology/branches/fossology2.0/fossology/src/ununpack/agent/utils.c?view=markup&pathrev=5878 &
http://fossology.svn.sourceforge.net/viewvc/fossology/branches/fossology2.0/fossology/src/ununpack/agent/utils.c?view=markup&pathrev=5879
- Test memory leak fix in _RepGetHost using valgrind (Eg. valgrind --tool=memcheck --leak-check=yes ./nomos myfile.c) fixed in branches/fossology2.0/fossology/src/lib/c/libfossrepo.c, fossconfig.c & libfossscheduler.c Completed by Larry
http://fossology.svn.sourceforge.net/viewvc/fossology/branches/fossology2.0/fossology/src/lib/c/libfossrepo.c?view=markup&pathrev=5876 &
http://fossology.svn.sourceforge.net/viewvc/fossology/branches/fossology2.0/fossology/src/lib/c/fossconfig.c?view=markup&pathrev=5875 &
http://fossology.svn.sourceforge.net/viewvc/fossology/branches/fossology2.0/fossology/src/lib/c/libfossscheduler.c?view=markup&pathrev=5875
- Agent regression tests
adj2nest (Mary) DONE testfiles.tar, RedHat.tar & all.zip passed
buckets (Mary) DONE all.zip & RedHat.tar passed
copyright (Mary) DONE all.zip & LTS_dev_acpi.tar.gz passed
delagent (Mary) DONE testfiles.tar passed
mimetype (Mary) DONE testfiles.tar, RedHat.tar & all.zip passed
nomos (Mary) DONE testfiles.tar, RedHat.tar & all.zip passed
pkgagent (Mary) DONE python-devel-2.6.0-8.6.x86_64.rpm
ununpack (Mary) DONE testfiles.tar, RedHat.tar passed
wget_agent (Mary) DONE testfiles.tar via upload_url passed; RedHat.tar via upload_url passed; all.zip via upload_file passed
- Check to see garbage in email notification has been corrected (http://www.fossology.org/issues/1875) Deferred to 2.0.1 http://www.fossology.org/issues/1989
- Verify the scheduler will accept and use "-c sysconfdir" passed on the command line (http://www.fossology.org/issues/2007)
larry's test notes: For now, the scheduler can use the new sysconf to schedule agents, but the agents cannot finish successfully, please refer to http://www.fossology.org/issues/2025, so for now, I cannot say if issue #2007 is fixed or not.
- Test the package upgrade path from RC2 to RC3 (for fossology.usa upgrade) (Mary) DONE