Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automated City Acceptance tests #718

Open
orangejulius opened this issue Mar 24, 2018 · 3 comments
Open

Automated City Acceptance tests #718

orangejulius opened this issue Mar 24, 2018 · 3 comments

Comments

@orangejulius
Copy link
Member

orangejulius commented Mar 24, 2018

Hey team!

In our first community call a great question was raised around testing. Historically, the main source of answers for "does Pelias as a whole work?" and similar questions has been our acceptance-tests: a set of around 600 hand-curated tests that require a full planet instance of Pelias.

Setting up a full planet build of Pelias costs a minimum of a few hundred dollars in server costs, and takes a while to run. So it's a very slow feedback cycle that is also hard to get working at all. This was in fact a point of considerable pain and slowdown for us at Mapzen.

While full planet testing will always be valuable and useful, it's a good idea to think of other types of tests that can be used first.

From our discussion, it would be very helpful to select maybe 10 small regions, or combination of regions, curate a set of acceptance tests for each region, and run a build for all those regions very frequently. A city-sized Pelias build can be run with the dockerfiles setup in about 20 minutes on relatively small hardware.

I think we could even run something like this on TravisCI or CircleCI, so the setup and recurring costs would be minimal or zero. Does anyone have proposals for how we manage the regional acceptance tests or the builds?

We also need to choose areas to test against. Some cities are essentially guaranteed to be on that list, such as NYC, Portland, and Berlin. However I think we should strive for a city on every continent (except Antarctica :) ), and also some rural areas.

@adelcasse
Copy link

Great idea ! We can probably contribute with a french city (Paris ?) if needed/usefull

@ashleyha
Copy link

Great idea! A couple follow-on questions:

  1. It might also be useful to discuss guidelines for developing good tests, as well as test coverage, to support consistency between regions. Is there existing Pelias documentation that might be a good starting point for this?

  2. In addition to the developer community here, wondering if there might also be opportunities to reach out to and incorporate the open mapping community to leverage overlap in workflows and local knowledge of place locations and names. Would there be value in exploring some mapathon / testing hackathon options to generate user-provided test cases?

@adelcasse
Copy link

On the proposition 2. of @Ashleyholt, we could maybe imagine, for those who have an instance exposed to "real world users" (when integrated in an app for example), finding a way to save anonymized usage data and share these datas to get analytics on searches/autocompletes, results and accuracy ? (and it would be a good way to get test cases from real users)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants