Web Presence Working Group: Testing Guide: Difference between revisions

From GO Wiki
Jump to navigation Jump to search
No edit summary
Line 35: Line 35:
=== Functional ===
=== Functional ===


Check and make sure that the new term details pages function as expected.
Check and make sure that the new term details pages function as expected. You will have to find these either through searching or browsing.


Example URL: http://goweb-dev.stanford.edu/cgi-bin/amigo/term-details.cgi?term=GO:0022008
Example URL: http://goweb-dev.stanford.edu/cgi-bin/amigo/term-details.cgi?term=GO:0022008

Revision as of 18:41, 26 July 2010

To Testers...

Please read the next section (as well as "Things to Remember" at the end) and select features that you feel that you can test. Once you have tested a feature, edit this page and write your name next to "Test by:". As much as possible, please select things to test that have not been tested as much as others.

Keep in mind that the main user-side features for this release are: new term details pages with a new way of browsing within those pages and lucene-based searching. Most of the testing energy should be directed towards these.

Testable new features

Installation scripts

Basically, successfully install AmiGO on a machine and check to see if the installation script lies. This would mean checking with both version.pl and simulate.pl.

URL: N/A

Tested by: ???

Refresh/clean-up script

Using refresh.pl in all of its new forms. Successfully: update amigo to a new database (standard), update with a new GO_xrf.abbs from CVS (standard), keep the cruft down (-r).

URL: N/A

Tested by: ???

AmiGO software page

Check that it contains the proper links to all features not included in the menu bar or welcome page.

URL: http://goweb-dev.stanford.edu/cgi-bin/amigo/amigo

Tested by: ???

New Term Details Page

Functional

Check and make sure that the new term details pages function as expected. You will have to find these either through searching or browsing.

Example URL: http://goweb-dev.stanford.edu/cgi-bin/amigo/term-details.cgi?term=GO:0022008

Tested by: ???

Containment

The old term details code was not removed from AmiGO and is actually still used in some cases (such as slims/subsets). Check and make sure that it is not possible to view GO terms in the old context.

Note that the auto-tester has already covered a large number of the easily reachable links. The auto-tester does not yet work over forms, so that might be a good place to look for problems.

URL: N/A

Tested by: ???

Live Search

Check and make sure that the live search page functions as expected.

URL: http://goweb-dev.stanford.edu/cgi-bin/amigo/amigo?mode=live_search

Tested by: ???

Things to Remember

Beyond checking functionality and correctness of the results, here are some other things to keep in mind while testing:

  • Do things work in other web browsers--sometimes different browsers behave and/or display differently
    • If possible, check things with Firefox, Safari, and Internet Explorer
  • Please check for consistency in terminology (i.e. "ref genome" vs. "homolog" vs. "equivalog").
  • Travel paths that are less travelled and use inputs that you might not normally use
  • Do things more quickly or carelessly than usual
  • Opening multiple sessions or windows and juggling between them
  • Clicking multiple controls and backtracking

Another thing to try is fuzz testing. Basically trying random inputs in an effort to break the program. This would be random things in the URL and inputs. Usually this is automated, but we probably won't have something like that until more of the new AmiGO framework is written.

Along a similar vein is actively trying to break the system given that some of the internal structure is known. This can include things like entering MySQL statements (the bottom layer of AmiGO) in order to try and trick AmiGO into executing an inappropriate statement. Errors found along these lines are very important for the developers to fix quickly as they can allow unauthorized access to the underlying system.

Finally, there is load testing; where you might try and overload the system. This probably won't be very useful or informative while running on the toy server.