-
Notifications
You must be signed in to change notification settings - Fork 1
Charter 24 Explore textures API using different inputs to detect issues
- Explore textures API using different inputs to detect issues
- Benjamin Ell-Jones
- 05/08/2024
- 45-90 mins
- Test Textures API with postman using different inputs to seek any unexpected behaviour
- Use a heuristics cheat sheet to get inspiration for different inputs
- Postman
- Textures API
- Ministry of Testing Test Heuristics Cheat Sheet
- Use Postman to test a variety of parameters
- Turn off db container and trying to make a request to see if a 500 error code is returned
Tried putting spaces in different places for example, before date, after date, throughout the date etc
Seeded database with leap day date to check that is still returned that bit of data
Tried a few always invalid days, they returned 404 rather than an error. Maybe we should disallow these? Seems to work fine for September 31st however
Does seem to reject completely, outlandishly invalid date numbers
Tested to see if removing base_time caused and error
Provided empty date, returned error
Checked to see if it errors if given a non leap year date. It does not give an error, it just returns no data (no data like this in database during test it probably should error before then).
Does seem to expect a specific date format and does not work with any other.
Checked to see if using Z instead of +00:00 works, it does.
Sent date to api as a string, does not work, as expected
Tried to disable the database and get a 500 error from the api, however this did not seem to work as postman request would not timeout and give any error, it would just keep going.
Seems to be fine, for the most part however, there are a few things to note, these may or may not require action:
- Checked to see if it errors if given a non leap year date. It does not give an error, it just returns no data (no data like this in database during test it probably should error before then).
- Tried a few always invalid days, they returned 404 rather than an error. Maybe we should disallow these? Seems to work fine for September 31st however, we get an error as we would expect.
Getting Started and Overview
- Product Description
- Roles and Responsibilities
- User Roles and Goals
- Architectural Design
- Iterations
- Decision Records
- Summary Page Explanation
- Deployment Guide
- Working Practices
- Q&A
Investigations and Notebooks
- CAMs Schema
- Exploratory Notebooks
- Forecast ETL Process
- In Situ air pollution data sources
- Notebook: OpenAQ data overview
- Notebook: Unit conversion
- Data Archive Considerations
Manual Test Charters
- Charter 1 (Comparing ECMWF forecast to database values)
- Charter 2 (Backend performance)
- Charter 3 (Forecast range implementation)
- Charter 4 (In situ bad data)
- Charter 5 (Filtering ppm units)
- Charter 7 (Forecast API input validation)
- Charter 8 (Forecast API database sizes)
- Charter 9 (Measurements summary API input validation)
- Charter 10 (Seeding bad data)
- Charter 11 ()Measurements API input validation
- Charter 12 (Validating echart plot accuracy)
- Charter 13 (Explore UI after data outage)
- Charter 14 (City page address)
- Charter 15 (BugFix diff 0 calculation)
- Charter 16 (City page chart data mocking)
- Charter 17 (Summary table logic)
- Charter 18 (AQI chart colour banding)
- Charter 19 (City page screen sizes)
- Charter 20 (Date picker)
- Charter 21 (Graph consistency)
- Charter 22 (High measurement values)
- Charter 23 (ppm -> µg m³)
- Charter 24 (Textures API input validation)
- Charter 25 (Graph line colours)
- Charter 26 (Fill in gaps in forecast)
- Charter 27 (Graph behaviour with mock data)
- Charter 28 (Summary table accuracy)
- Re‐execute: Charter 28
- Charter 29 (Fill in gaps in situ)
- Charter 30 (Forecast window)
- Charter 31 (UI screen sizes)