EEL-5881

Software Engineering Project: Research Expert



Home



Concept of Operations

Project Management Plan

Software Requirements Spec

Test Plan

High-Level Design

Detailed Design

Test Results

User's Manual

Source Code

Build Instructions

Project Legacy



Presentations




Research Expert

Test Results

EEL-5881, Fall, 2008

Team Name: Team 3

Team Members:


Contents of this Document

  1. Introduction
  2. Description of Test Environment
  3. Overall Stopping Criteria
  4. Description of Individual Test Cases
  5. Conclusion


SECTION 1: Introduction

This document is a rehash of the original Test Plan. Each individual test case has been updated with what unit tests cover it, when it was last run and by whom, and whether or not the test passed. In addition a conclusion section has been added to recap all the testing progress to date.


SECTION 2: Description of Test Environment

The hardware used to test the system will consist of a standard computer running Microsoft Windows XP or Windows Vista. The testers will be the developers of the system. The customer will be included during acceptance testing to ensure that the software meets his expectations. The client-side computer will run Microsoft Internet Explorer 7. The test environment will not be identical to the operational environment, but the web browser will provide a common denominator. Likewise, the testing environment for the hosting server will not be identical to the client's hosting environment. Testing the installation package will be performed during the beta period to validate the server-side software on the customer's hardware.


SECTION 3: Stopping Criteria

Testing will be conducted into three phases: testing sessions, the beta period, and acceptance testing. Testing session will be performed after development milestones, before the product is considered 'feature complete' During a test session, all tests within the test plan will be run until either all tests are complete or a fatal error occurs, preventing further testing. As each test is completed, the result is examined and failures are reported as bugs. Bugs will be categorized into three groups: show-stopping, low priority, and known-shippable.

The beta period will begin at the end of the implementation phase, when the application is considered 'feature complete'. During the beta period, testing sessions will be conducted continuously until all show-stopper and low-priority bugs are resolved. Additional tests will be during this phase until the code coverage is greater than 70%.

The last testing phase, acceptance testing, will involve the customer and will begin at the end of the beta period. As the customer identifies deficiencies, new release candidates of the application will be developed to include his feedback. This process will continue until the user fully approves the system and has no further requirements, or until the time budget for the system is exhausted.


SECTION 4: Description of Individual Test Cases

Test Objective: Create New User

Test Description: Enter the website for the application.  Try to create several new users.  Also attempt to create a new user with a name that is already in use.

Test Conditions: Web site is operational

Expected Results: New users are created in the database, with a successful message displayed.  The request to create a user with a non-unique name shall be denied, with an error message describing what went wrong being displayed.

Covered by Tests: UserManagerTest->AddUser

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Modify User

Test Description: Tester logs in to the application.  Tester clicks on the “Modify Profile” button.  Tester then modifies the properties of each field, including URL, e-mail address, password, name, and affiliation.

Test Conditions: User exists in database.

Expected Results: Success message is printed, and clicking on the profile page of the user shows the updated fields.

Covered by Tests: UserManagerTest->UpdateUser

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Delete User

Test Description: Tester logs in to the application as the site administrator.  Tester attempts to delete a user from the database.

Test Conditions: User exists in database.

Expected Results: Error message printed if the user does not exist; otherwise, a success message is printed out.  The user should no longer appear in the database if successful.

Covered by Tests: UserManagerTest->DeleteUser

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: User Login

Test Description: Tester enters the application’s website, and attempts to login to the site using a known username and password.

Test Conditions: User already exists in the system.

Expected Results: User should receive a login successful message, and be taken to their main profile page.

Covered by Tests: Manually tested

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: User Logout

Test Description: Tester logs in to the website, and clicks on the “Logout” button.  Tester then tries to see if menus and options can be accessed that would normally be only accessed by users who are already logged in.

Test Conditions: User already exists in the system.

Expected Results: User should receive a logout success message and not be able to do any other commands, such as add repository or add document.

Covered by Tests: Manually tested

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Create Repository

Test Description: Tester enters the website and logs in as a user.  Tester then clicks on the “Create New Repository” button.  Tester attempts to create 3 repositories, with the 3rd being named the same as one of the previous two repositories.

Test Conditions: User already exists in the system.

Expected Results: User should receive a success message upon creation of the repository.  Each time a repository is created, the default main page for the user is updated to reflect the new repository.  The 3rd repository should not be successfully created, and a warning message should be displayed to the user with a description of what went wrong.

Covered by Tests: RepositoryManagerTest->AddRepository

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Modify Repository

Test Description: Tester enters the website and logs in.  Tester also enters a repository’s page that the tester has admin privileges to.  Tester clicks on the “Modify Repository” button, and renames the repository and alters the description.  Tester also attempts to rename a repository to the same name as a repository that already exists.

Test Conditions: User and repositories already exist in the system.

Expected Results: All attempts to modify repository description shall be successful given that the tester has admin privileges to the repository, with appropriate message printed to screen.  Entering the repository page shall display the new description.  Attempts to rename the repository shall be successful as long as the name is unique, with success message printed out.  The repository page will reflect the new name.  If the name is not unique, an error message is displayed, and the repository is not renamed.

Covered by Tests: RepositoryManagerTest->UpdateRepository

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Delete Repository

Test Description: Tester logs in to the website and enters a repository page in which the tester has admin rights to.  Tester clicks on the “Delete Repository” button and selects yes when prompted “Are you sure?”

Test Conditions: User and repository exists in the system.

Expected Results: The repository no longer exists in the database, and the user’s profile page is updated to reflect the missing repository.

Covered by Tests: RepositoryManagerTest->DeleteRepository

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Assign access privileges

Test Description: Tester logs into website and enters a repository that the tester has admin privileges to.  User clicks on the “Modify User Privileges” button for 3 different users subscribed to the repository, changing one to admin, one to read-write, and the other to read-only.  In addition, the tester should attempt to modify the privileges of another admin for the repository to read-write or read-only.

Test Conditions: Users and repository exists in the system.  Repository has three other users subscribed to the repository.

Expected Results: Success messages are printed out when privileges are changed, and the repository member page is updated to reflect this.  Error message is printed out when the tester attempts to modify an admin’s rights.

Covered by Tests: Not yet implemented

Last Run: N/A

Status: N/A

 

Test Objective: Create Document

Test Description: Tester with read-write or admin privileges to a repository enters the repository and clicks on the “Create Document” button, and uploads a sample PDF file to the repository. <TODO: link to sample .pdf to upload?>  In addition, tester logs in as a user with read-only privileges to the repository and clicks on the same button.

Test Conditions: User and repository exists.  Tester has access to user accounts with all privileges.  PDF file is non-corrupted.

Expected Results: Success message is printed out.  The new document should appear on the repository list.  When clicked on, the metadata table should be correctly filled out.  Error message is printed out when the tester attempts this with read-only privileges.

Covered by Tests: DocumentManagerTest->AddDocument

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Modify Document

Test Description: Tester with read-write+ privileges to a repository enters the repository, clicks on an already uploaded document, and clicks on “Modify Document.”  Tester then attempts to modify the metadata associated with the document.  In addition, the tester repeats this as a read-only user.

Test Conditions: User, repository, and document all exist.  Tester has access to user accounts with all privileges.

Expected Results: Success message is printed out, and the new metadata should appear when the document that was modified is accessed.  Error message is printed out when the tester attempts this as a read-only user.

Covered by Tests: DocumentManagerTest->UpdateDocument

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Delete Document

Test Description: Tester with RW+ privileges to a repository accesses a document on the repository, and clicks on “Delete Document.”  Tester also attempts this as an RO user.

Test Conditions: User, repository, and document all exist.  Tester has access to user accounts with all privileges.

Expected Results: Success message is printed out, and the document and any attached reviews, references, and associations no longer appear on the repository.  Error message is printed out when the tester attempts this as an RO user.

Covered by Tests: DocumentManagerTest->DeleteDocument

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Create Review

Test Description: Tester with read-write or admin privileges to a repository enters the repository and accesses a document.  Tester clicks on the “Create Review” button, and uploads a review PDF file to the repository. <TODO: link to sample .pdf to upload?>  Tester also attempts to upload review text to the same document.  In addition, tester logs in as a user with read-only privileges to the repository and clicks on the same button.

Test Conditions: User, repository, and document all exist.  Tester has access to user accounts with all privileges.  PDF file is non-corrupted.

Expected Results: Success message is printed out.  The new document should appear on the repository list, attached to the reviewed document.  The new text review should also appear attached to the reviewed document.  Error message is printed out when the tester attempts this with read-only privileges.

Covered by Tests: ReviewManagerTest->AddReview

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Modify Review

Test Description: Tester with read-write+ privileges to a repository enters the repository, clicks on a document, accesses a review, and clicks on “Modify Review.”  Tester then attempts to modify the reviews (both a file review and a text review) associated with the document.  In addition, the tester repeats this as a read-only user.

Test Conditions: User, repository, document, and reviews all exist.  Tester has access to user accounts with all privileges.

Expected Results: Success message is printed out, and the modified reviews should appear when the document that was modified is accessed.  Error message is printed out when the tester attempts this as a read-only user.

Covered by Tests: ReviewManagerTest->UpdateReview

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Delete Review

Test Description: Tester with RW+ privileges to a repository accesses a document on the repository, accesses a review, and clicks on “Delete Review.”  Tester also attempts this as an RO user.

Test Conditions: User, repository, document, and reviews all exist.  Tester has access to user accounts with all privileges.

Expected Results: Success message is printed out, and the review no longer appears on the repository.  Error message is printed out when the tester attempts this as an RO user.

Covered by Tests: ReviewManagerTest->DeleteReview

Last Run: 11/29 by Joshua Thompson

Status: PASS

 

Test Objective: Create Reference

Test Description: Tester with read-write or admin privileges to a repository enters the repository and accesses a document.  Tester clicks on the “Create Reference” button, and provides a link to another document in the database.  Tester also attempts to provide a link to another document that does not actually exist in the database.  In addition, tester logs in as a user with read-only privileges to the repository and clicks on the same button.

Test Conditions: User, repository, and document all exist.  Tester has access to user accounts with all privileges.

Expected Results: Success message is printed out.  The new reference should appear on the repository list, attached to the document.  An error message is printed out if the link points to a document that does not exist.  An error message is also printed out when the tester attempts this with read-only privileges.

Covered by Tests: Not yet implemented

Last Run: N/A

Status: N/A

 

Test Objective: Modify Reference

Test Description: Tester with read-write+ privileges to a repository enters the repository, clicks on a document, accesses a reference, and clicks on “Modify Reference.”  Tester then attempts to modify the reference associated with the document.  In addition, the tester repeats this as a read-only user.

Test Conditions: User, repository, document, and reference all exist.  Tester has access to user accounts with all privileges.

Expected Results: Success message is printed out, and the modified reference should appear when the document that was modified is accessed.  Error message is printed out when the tester attempts this as a read-only user.

Covered by Tests: Not yet implemented

Last Run: N/A

Status: N/A

 

Test Objective: Delete Reference

Test Description: Tester with RW+ privileges to a repository accesses a document on the repository, accesses a reference, and clicks on “Delete Reference.”  Tester also attempts this as an RO user.

Test Conditions: User, repository, document, and reference all exist.  Tester has access to user accounts with all privileges.

Expected Results: Success message is printed out, and the reference no longer appears on the repository.  Error message is printed out when the tester attempts this as an RO user.

Covered by Tests: Not yet implemented

Last Run: N/A

Status: N/A

 

Test Objective: Browse for Documents

Test Description: Tester uses the browse function, and browses two distinct users.  All of the documents uploaded by each user should appear on the screen.  Then the tester browses for a conference.  All of the documents of that conference should appear on the screen.  Finally, the tester browses several distinct tags, and all the papers with the browsed tags should appear.

Test Conditions: Repository and documents exist.  Two users should create several documents.  In addition, several documents should be created under the same conference category, and several documents should be created with the same tags.

Expected Results: There should be a correct match between the documents that appear on the screen when browsing and the documents that exist in the database.

Covered by Tests: Not yet implemented

Last Run: N/A

Status: N/A

 

Test Objective: Search for Documents

Test Description: Tester uses the search bar, and attempts to search for documents based on each of the following: title, author, keyword, publication source, and abstract (full-text search).

Test Conditions: Repository and documents exist.  Several documents exist for each of the previously mentioned qualities.

Expected Results: The search results correctly display all the matching documents for each of the search parameters.

Covered by Tests: Not yet implemented

Last Run: N/A

Status: N/A

 

Test Objective: Upload Document Larger than Size Limit

Test Description: Tester enters a repository and attempts to upload a document larger than the size limit dictated by the System Administrator.

Test Conditions: User and repository exists.  Several documents exist for each of the previously mentioned qualities.

Expected Results: The search results correctly display all the matching documents for each of the search parameters.

Covered by Tests: Not yet implemented

Last Run: N/A

Status: N/A

 


SECTION 5: Conclusion

Overall, every test case either passes or involves a system capability that has been cut for the final delivery. All show-stopper and low-priority bugs have been corrected, and the only bugs that remain are minor cosmetic user interface bugs that will not be addressed. In addition, the customer, Chris Centelle, has been given updates and links to view our progress in order to satisfy our customer testing, but he has not responded. Since no comments from the customer can be construed to mean no complaints, this means that the customer testing portion of the test plan is complete.