Course Batching QA Test Plan
TEST PLAN DATE
Testing date: Scheduled 9/14/06, early morning
TEST PLAN OVERVIEW
Scope of testing
This testing is designed to guide Quality Assurance in the functionality testing of the batch creation mechanism of course sites in SmartSite. The functionality of the batching mechanism, which can be run at any time by an application administrator, is detailed by the given test cases in this plan. Additionally, the level of involvement by QA, system administrators, and programmers will be detailed for each test case.
Purpose for this testing
The automatic course creation mechanism for SmartSite. Course sites, when done automatically via chron jobs, can be created and/or updated in several ways
- On-Demand List of courses (White list)
- Will create only a pre-defined list of course sites
- Not specific to a Term
- Excluded List of courses (Black list)
- Will not be created by any mechanism
- Auto-update of existing course sites with group update (e.g. provider id)
- Sets existing sites with the assigned provider id value, and will not provision a duplicate site with same provider id from full other batch run
Additional Items Related to provider id testing
- Manually update provider Id for a site
- Need to be done as a an admin user, or one that has access to admin realm
- See the results of the realms being refreshed
KNOWN ISSUES / PREVIOUS BUGS FIXED
- There are some known issue for this testing, they are:
- Related to the Home Page web content displayed for course sites. Currently, the Course Description information displays course title, which will be changed to description when the external data is mapped to a description field.
- There were two bugs found during unit/integration testing that are presumed fixed.
- The term information on the site tool didn't match the tab abbreviation for the term
- When a user, especially an instructor, logged in (e.g. SU Tool) there is a limit of associations the instructor can have to courses. This limit is 1000, and since has been filtered down to pull back only terms that are <= year 2005.
(These JIRAs (SAK-184, SAK-185) are listed below in the summary of JIRAs covered in this test plan.)
JIRAs that explain features to be tested in this plan
TESTING BUGS FIXED:http://jira.ucdavis.edu:8080/jira/browse/SAK-185 (1000 row limit on associations (realms) for sakai internal query)
TESTING BUGS FIXED:http://jira.ucdavis.edu:8080/jira/browse/SAK-185 (term abbreviation and term description do not match in site information tool)
http://jira.ucdavis.edu:8080/jira/browse/SAK-23 (Add ability to customize pages and tools added to pages (both default and provisional) when provisioning course sites)
http://jira.ucdavis.edu:8080/jira/browse/SAK-25 (Remove admin user from sites, during course creation script)
http://jira.ucdavis.edu:8080/jira/browse/SAK-119 (Course White List)
http://jira.ucdavis.edu:8080/jira/browse/SAK-121 (Batch provisioning should make a toolset based on OOTB and other (provisional and contrib) tools)
http://jira.ucdavis.edu:8080/jira/browse/SAK-136 (Add Course title (from Banner) is the field presently mapped for course description information when provisioning sites. A course description (short and long) should be mapped from external data so that it can be referenced by certain course tools)
http://jira.ucdavis.edu:8080/jira/browse/SAK-140 (Course Black List)
http://jira.ucdavis.edu:8080/jira/browse/SAK-141 (Batching is done under a 'batch admin' user)
http://jira.ucdavis.edu:8080/jira/browse/SAK-146 (Set Provider Id For Manually Created Courses)
other non-batch related JIRAs covered:
http://jira.ucdavis.edu:8080/jira/browse/SAK-143 (enable distributed authentication using AFS file system)
http://jira.ucdavis.edu:8080/jira/browse/SAK-133 (AuthZ refresh test, https://jira.ucdavis.edu:8444/jira/browse/SAK-174)
JIRAs that reference test scenarios, "QA Tests" described in this test plan
https://jira.ucdavis.edu:8444/jira/browse/SAK-119 = White List https://jira.ucdavis.edu:8444/jira/browse/SAK-140 = Black List https://jira.ucdavis.edu:8444/jira/browse/SAK-146 = Setting Provider Id
Modifications to this Test Plan After Review with QA, 9/12/06
No Scenario 2b covered here, no Provider id consulting Black list functionality to be tested
TEST ENVIRONMENT
- Hardware Setup
Server Type
Location
database
bricker.ucdavis.edu with banner-test (external db), and sakai test (internal db)
application
isaac.ucdavis.edu, sakai-test
web server
url,
http://sakai-test.ucdavis.edupopulation of data referenced
2006 Banner Test data (external), and clean sakai internal database with exception of necessary login accounts and manual sites created)
- Note: The application does not need to be stopped for these tests to occur
- Software Setup
run test under https://mware.ucdavis.edu/svn/ucdsakai/branches/sakai-core-2.1.x branch, with mods from https://mware.ucdavis.edu/svn/ucdakai/sakai-core-2.1.x-scottsdev branch incorporated
- Additional Setup Needed
**Batch admin account (e.g. ssbatchadmin)
**QA admin account (e.g. QAadmin)
**All login accounts that use kerberos names can be "provided" by the system (e.g. UserDirectoryProvider implemented).
**SU tool and Quartz tools are available in admin workspace/realm
**Pat Kava will be given access to admin realm
**Testers have access to testable sites (via SU tool, admin workspace)
- External-Banner Test Data to be Used As Representative Course Scenarios (see each test case)
A copy of test data that may be used for these test cases is attached: http://confluence.ucdavis.edu:8080/confluence/download/attachments/17096/200603TestData.xls
- A few test course sites need to be created in advance so that the batch job can modify these sites with a respective provider Id. These sites are documented in the Provider Id Test Section.
DEPENDENCIES
- At least UserDirectoryProvider enabled to allow user accounts to be looked up automatically via kerberos name (Note:all Providers will be enabled)
- Distributed authentication using AFS (SAK-143)
- Sakai-test database will be a copy of existing production data, so sakai-test will have to be backed up prior to testing
- We will be referencing sakai-test external for populating course data
ROLES AND RESPONSIBILITIES
- Testers (QA,students etc)*
- Admins and SmartSite Programmers
- Any of the following persons that may be available:
***Application admins (Programmers available, including Thomas, Lisa W., James, Brian, Jon G., Scott)
***Database/system admins (Geeta, Chris Callahan)
- Any of the following persons that may be available:
*All of the above users will have access to the admin realm in Sakai, in addition to:
***ssbatchadmin
***QAadmin
COURSE SITE BATCHING DOCUMENTATION
- Requirements
White List/Black List/Provider Ids setting documented requirements are in Jira
Default Tool Set/Pages and Batching Strategy https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/Course+Batching+Strategy
Site Tab abbreviations documented at: https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/Limitations+of+adding+courses+manually+to+SmartSite
General Provider and Batching interaction documented at https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/Requirements+for+Data+Provisioning+using+Providers+and+Batch+Processes
UNIT AND INTEGRATION TEST RESULTS
Unit Test Results
The JUnit tests results are located on the server at:
isaac/var/sakai/ucd-data/course-batch-unit-tests-082006
or..
https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/Course+Batch+Creation+Unit+Test+Results
= All unit tests passed!!
Integration Test Results
TEST PLAN PROCESS
This Course QA Test Plan will be coordinated by Pat Kava, with assistance from the programming group (e.g. Scott Amerson), and will document the results of QA testing. It is assumed that all bugs have been documented by the programming group as issues before handing off to QA.
Steps involved in the test process will be varied depending on the given test performed (as described below in the Test Cases section).
*NOTE: The order of the test cases will be as follows.
Case 1: White List Testing,
Case 2 (a -and b-): Black List Testing,
Case 3 (a and b) Provider Id Testing
- Site Functionality Testing (Case 4), Course Management Testing (Case 5), and Provider Id (Case 3a) testing are each part of the White List testing scenario.
- In order to test the Black List functionality, we will need to have a superset of CRNs that are trying to be added at the same time. To accomplish this, we will use the White List scenario with a same CRN that is included in the Black List file. See Black List Test Scenario for more information.
TEST CASES
Key for Test Case Scenarios
Prerequisite Steps = actions needed before performing any of the given tests
Category of Testing = the described testing is at what level?
Description = description of the test performed
Case 1 #White List
White List Testing
Description = Test the capability of the system to add "on-demand" course sites that are listed in a file. Courses are not required to have any enrollment in order to be created.
Category of Testing = unit, integration,functionality,regression
Prerequisite Steps
- Scott will add a list of CRNs (valid or not) as the white-list.txt file in /var/sakai/ucd-data folder on the server, in the form of TERMYR-TERMCD-CRN for each entry. Use this file file to use here
- Scott will que the batch job to run, only for the above list (5 min elapsed time needed)
- Scott will give maintain permissions on the applicable sites, to the appropriate users
- QA team = look up CRN as instructor for 2006-03-93158
- QA team = look up CRN as instructor for 2006-06-60005
- Scott will assist users in accessing the site(s) if needed
- QA team = look for CRN 20061-06-111, 2006-03-99999
- QA team = look up CRN 2006-sfs-sfsfdfsdfsfsfs
- Scott will advise testers that the batch has been run and sites have been created
- Scott and other programmers will monitor server activity while testers are using sakai-test.
Test Scenario
- Above users will perform functionality testing for each CRN, including :
**perform functionality test https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/SmartSite+Course+Site+Tests%2C+Site+Functionality+Integration+Test+Results+Matrix for each site
**perform course management test https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/SmartSite+Course+Site%2C+Course+Management+Integration+Test+Results+Matrix for each site
**perform provider id test https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/SmartSite+Provider+Id+Update+of+Existing+Sites%2C+Integration+Test+Results+Matrix for each site
- Data to Be Used:
Scenario
Course
Roster Count
Instructor Kerb Name
Course Details (Catalog Root, Suffix, Section, Description)
Test Case Used In
File Associated
Invalid CRNs
Invalid CRN (Number)
20061-06-111
NA
NA
NA
NA
White List
white-list.txt
Invalid CRN (Number)
2006-03-99999
NA
NA
NA
NA
White List
white-list.txt
Invalid CRN (Bogus Text)
2006-sfs-sfsfdfsdfsfsfs
NA
NA
NA
NA
White List
white-list.txt
*additional data (see attachment),may used for this testing* Invalid CRN (Number) available
2006-03-67952
10 (all valid knames)
shershow (Scott Shershow)
CRI 200B 002 Problems in Crit Theory
Spring Quarter 2006
White List
white-list.txt
Valid CRNs
CRN with no enrollment
2006-03-93158
10 (all valid knames)
klradke (Kathryn Radke)
SAS 197T 001 Tutoring Sci & Society
Spring Quarter 2006
White List
white-list.txt
CRN with enrollment
2006-06-60005
11 (all valid knames)
acham (Christine Acham)
AAS, 198, S01, Directed Gp Study
Summer Special Session 2006
White List
white-list.txt
CRN with enrollment
2006-03-93307
large enrollment (all valid knames)
fzvasili (S Spyridakis)
HIS 111C 001 Ancient History
Spring Quarter 2006
White List
white-list.txt,black-list.txt
Test Cleanup
- Scott will remove all sites created in this step when all test cases are completed.
results: Recorded in Jira https://jira.ucdavis.edu:8444/jira/browse/SAK-119
White List Test Results
Would yield an example Summary Test Result of:
Test |
User Role |
User Acting As |
Result |
Expected Result |
Pass/Fail |
---|---|---|---|---|---|
Site xxxxx (created): Functionality Results |
samerson |
fzolupon |
All tests pass |
batching of course succeeded |
P |
Site xxxxx (created): Course Management Test Results |
samerson |
fzolupon |
All tests pass |
course content correct |
P |
Site xxxxx (created): Provider Id Test Results |
samerson |
fzolupon |
All tests pass |
provider id correct, roster number correct |
P |
or..
Test |
User |
User Acting As |
Result |
Expected Result |
Pass/Fail |
---|---|---|---|---|---|
Site xxxxy (not created):Test Results |
samerson |
fzolupon |
All tests pass, not provisioned |
course not created, correct |
P |
Case 2 #Black List
Black List Testing
Description = Test the capability of the system to not add course sites that are listed in a file. Courses in this list will never be batch created.
Category of Testing = unit, integration, functionality,regression
Prerequisite Steps
- Scott will add a list of CRNs (valid or not) to the white-list.txt file in /var/sakai/ucd-data folder on the server, in the form of TERMYR-TERMCD-CRN for each entry. This list will be different than that used for the White List Test Scenario. Use this white list
- Scott will add a list of CRNs (valid or not) to the black-list.txt file in /var/sakai/ucd-data folder on the server, in the form of TERMYR-TERMCD-CRN for each entry. Use this black list file file to use here
- Scott will que the batch job to run (White List), (5 min time elapse needed)
- Scott will advise QA team that the batch has been run
- Scott will monitor server activity while testers are using sakai-test.
-Prerequisite Steps needed for Scenario #2b only (in addition to Scenario #2a steps)-
-# Scott will update existing hand created sites manually (TBD site ids) with an associated CRN as the provider id-
Test Scenarios
*Scenario #2a = Black list consulted when white list batch run is executed*
- QA team = will look for CRN 2006-06-60245 as user admin. This CRN will be listed in the White List files only
- QA team = will look for CRN 2006-01-60001 that is listed both in the white-list.txt and black-list.txt files
- QA team = will look for both CRN 2006-01-40018 that are listed both in the white-list.txt and black-list.txt files
- Scott = view logs, internal sakai db, will look for both CRN 2006-03-82882, 2006-03-83634 that are listed in the black-list.txt files only
- Scott = help as needed
- Data to Be Used:
Scenario
Course
Roster Count
Instructor Kerb Name
Course Details (Catalog Root, Suffix, Section, Description)
Test Case Used In
File Associated
Valid CRNs
CRN with no enrollment
2006-06-60245
0
fzduts (Dennis Dutschke)
ITA 198 S01 Dir Group Study
Summer Special Session 2006
Black List
white-list.txt
CRN with large enrollment number
2006-01-60001
84 (all valid knames)
ewlarsen (Eric Larsen)
LDA, 190 , 001, ProSeminar
Winter Quarter 2006
Black List
white-list.txt,black-list.txt
CRN with enrollment
2006-01-40018
14 (all valid knames)
calymos (Calvin Lymos)
AAS, 154, 001, University Gospel Choir
Winter Quarter 2006
Black List
white-list.txt,black-list.txt
CRN with enrollment
2006-03-82882
10
ltcmwc (Mark Connelly)
MSC 141 002 Army Mngmt Systems
Spring Quarter 2006
Black List
black-list.txt
CRN with enrollment
2006-03-83634
10 (all valid knames)
eschang (Ernest Chang)
NPB 141P 001 Res In Physio Adapt
Spring Quarter 2006
Black List
black-list.txt
Case 3 #Update Existing Site with Provider Id
Update existing sites with appropriate provider id, enabling dynamic rosters (**When CourseManagementProvider enabled**)
Description = Test the capability of the system to update existing course sites with associated provider ids. This functionality can be done either in the UI or batch, however we want to
test the ability to run this at any time.
Category of Testing = unit, integration, functionality,regression
Prerequisite Steps
Results Recording Steps summarized in:
**perform provider id test https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/SmartSite+Provider+Id+Update+of+Existing+Sites%2C+Integration+Test+Matrix for each site
- Scott will add a list of sites and provider ids (valid or not) to the provider-id.txt file in /var/sakai/ucd-data folder on the server, in the form of site id, TERMYR-TERMCD-CRN for each entry. Use this file use file here
- Scott will que the batch jobs to run, just the provider id que batch run, (5 min time elapse needed)
- Scott will advise testers that the batch has been run
- Scott will monitor server activity while testers are using sakai-test.
*Data To Be Used:
Scenario |
Course |
SiteId or Title |
Instructor Kerb Name |
Course Details (Catalog Root, Suffix, Section, Description) |
Test Case Used In |
File Associated |
|
---|---|---|---|---|---|---|---|
InValid CRNs |
|||||||
No CRN (null CRN value) |
null |
NA |
NA |
NA |
NA |
Provider Id |
provider-id.txt |
Valid CRNs and Sites |
|||||||
CRN valid |
2006-03-93327 |
stenzel (John Stenzel) |
MST 020C A02 Late Med & Early Modern (roster=10) |
Spring Quarter 2006 |
Provider Id |
provider-id.txt |
|
CRN valid |
2006-03-92472 |
paully (Paul Manriquez) |
WLD 910 001 Wkload - Math Pre 16A (roster=10) |
Spring Quarter 2006 |
Provider Id |
provider-id.txt |
|
CRN valid |
2006-03-83569 |
goldberg (Jack Goldberg) |
NPB 101 001 Systemic Physiology (roster=553) |
Spring Quarter 2006 |
Provider Id |
provider-id.txt |
Scenario 3a (Batch updates existing sites provider id)
Test Scenario
- QA team = will look for site First Test Course To Be Updated By Batch's providerid and roster, logging in as admin
- QA team = will look for site Second Test Course To Be updated By Batch's providerid and roster, logging in as admin
- QA team= will look for site Third Test Course To Be Updated By Batch's providerid and roster, logging in as admin
- QA team = will validate provider ids and rosters
- QA team = perform manual updates of provider ids
- Scott = help as needed
Scenario 3b (Manual Process Check (update provider ids for sites manually)
Test Scenario
*Scott will have create 3 sites:
First Test Course To Have Manual Provider Id
Second Test Course To Have Manual Provider Id
Third Test Course To Have Manual Provider Id
-# After site First Test Course To Have Manual Provider Id,Second Test Course To Have Manual Provider Id, and Third Test Course To Have Manual Provider Id's provider ids are validated,-
QA will update site First Test Course To Have Manual Provider Id with:
providerId = 2006-03-73656 (10 enrolled)
and site Second Test Course To Have Manual Provider Id with:
providerId = 2006-03-F0001 made up of 2006-03-62179,2006-03-62178,2006-03-62180 (51 enrolled, multi-crn)
and site Third Test Course To Have Manual Provider Id with
providerId = 2006-03-80102 (178 enrolled)
- Scott and Pat Kava will check all sites rosters based on their associated provider id
Test Cleanup
- Scott will remove all sites created in this step when all test cases are completed.
results: Recorded in Jira https://jira.ucdavis.edu:8444/jira/browse/SAK-146, and is a part of White List Test https://jira.ucdavis.edu:8444/jira/browse/SAK-119
Provider Id Update Test Results
Would yield an example Summary Test Result of (both batch and manual updates):
Test |
User |
User Acting As |
Result |
Expected Result |
Pass/Fail |
---|---|---|---|---|---|
Site xxxxx: Provider Id Update Results |
samerson |
admin |
provider id is ....., roster is same as CRN for provider id |
provider id updated and seen in site tool under "provider id", roster reflects provider id roster |
P |
results: Recorded in Jira https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/Batch+Course+Creation+Integration+Test+Results%2C+Sept+5%2C+2006
Case 4 #Site Functionality
Site functionality
Description = Test the capability of the system to add sites with the correct pages, tools, tabs, and look and feel.
Category of Testing = unit, integration, functionality, regression
Prerequisite Steps
Results Recording Steps summarized in:
**perform functionality test https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/SmartSite+Course+Site+Tests%2C+Site+Functionality+Integration+Test+Results+Matrix for each site
looking for expected results
Test Scenario
Look and Feel
Pages
Tools on each page
Click-through on tools
Order
Tabs
Test Cleanup
- Scott will remove all sites created in this step when all test cases are completed.
results: Recorded as part of White List Scenario, and Jira https://jira.ucdavis.edu:8444/jira/browse/SAK-119
Jiras covered in this test case:
https://jira.ucdavis.edu:8444/jira/browse/SAK-121 = Tools and Pages
https://jira.ucdavis.edu:8444/jira/browse/SAK-23 = Tools configurable
Case 5 #Course Management Data Presented in Admin Tools
Course Management data present
Description = Test the course management content displayed in admin tools.
Category of Testing = unit, integration, functionality, regression
Prerequisite Steps
Results Recording Steps summarized in:
**perform course management test https://confluence.ucdavis.edu:8443/confluence/display/UCDSAKAI/SmartSite+Course+Site%2C+Course+Management+Integration+Test+Results+Matrix for each site
looking for expected results
Site Info tool
WorkSite Setup navigation
Test Cleanup
- Scott will remove all sites created in this step when all test cases are completed.
results: Recorded as part of White List Scenario, and Jira https://jira.ucdavis.edu:8444/jira/browse/SAK-119
Jiras covered in this test case:
https://jira.ucdavis.edu:8444/jira/browse/SAK-136 = Course Management Data (Description) details
Recording Results
The test results will be recorded in Jira by QA testers. They can be of table form or text form.
Feedback Mechanism
The above results will be analyzed by the QA team, SmartSite programming team, and SmartSite management to determine the quality of code. Results of this test should be discussed as near to the Monday and/or Code Migration meetings when available.