Put db in some standard state and start server:
paster db clean && paster db create && paster create-test-data search # alternatively we could use a dump of the live db # psql -h localhost --user tester ckantest < .... # may want to create a production config paster serve development.ini
Do tests:
# 5 results for this query ab -n 100 -c 10 -e myresults.csv "http://localhost:5000/api/search/package?q=government&all_fields=1" # remote test host # ab -n 100 -c 10 -e myresults.csv "http://test.ckan.net/api/search/package?q=geo&all_fields=1"
Examine results, fix, and repeat!
- http://httpd.apache.org/docs/2.0/programs/ab.html
- Well known and standard.
- Can run against local or remote but local preferred
- ab -n 100 -c 10 -e myresults.csv http://www.okfn.org/
- Mature and python based
- http://funkload.nuxeo.org/
- Functional testing primarily but with load testing support
- http://memcached.org/
- In memory caching with access via a port
- Very heavily used
- http://www.tornadoweb.org/
- Built by friendfeed and open-sourced
- Asynchronous