We use CircleCI and it is great for testing Python GAE apps. Here (
https://gist.github.com/SpainTrain/28fe7da692f5b9bf3266) is a gist for our circle.yml, Makefile, .noserc, and requirements.txt as an example. We use vendoring (
https://cloud.google.com/appengine/docs/python/tools/libraries27?hl=en#vendoring), so this config basically does the following:
- Updates certain "global" pypi pkgs
- Installs the local vendored pypi packages
- Installs the GAE SDK
- Runs linters
- Runs tests with nose (outputting artifacts for results xml, coverage, and profiling)
- [when building master branch] run a deployment script
As a bit of errata, do not worry about caching the downloaded SDK zip files. CircleCI already reverse proxies these downloads with a cache, so they are extremely fast.