Integration testing is used to test the pieces. While each piece should be tested, alone, we also need to test the pieces together. When a new piece provides an option to replace/supplement.
e.g a program that loads information, or transforms information needs to test the whole stack. A new user interface should be tested against the web services, and an ODTools dataset.
Overall characteristics of the datasets needed:
- Datsets Needed:
- Full well described dataset
- Best Practices dataset
- Minimal Dataset
- Example case datasets that have caused problems
- Test:
- Check that reasonable information can be loaded
- Check that not reasonable information cannot be loaded
- Known Issues to check:
- retrieval by code (where codes are numeric, alpha and alphanumeric, and alphanumeric with spaces)
Workflow:
This is the general overview of what an integration tests might be. Each piece will need a script, and when the information changes at the bottom, then the script needs to be modified.
- Load Data Into OD database
- OD Loader
check with sql queries that load worked as expected
- In New database, load well described dataset
- load additional well described subset,
- attempt to load known duplicates
- Load additional subset using xxxID methods
- In New database, load minimally described dataset
- load additional well minimally subset,
- attempt to load known duplicates
- Load additional subset using xxxID methods
- In New database
- Load Fully described dataset, then the minimal dataset
- In New database
- Load the minimal dataset then the Fully described dataset
- OD Web services
- create four web services, on for each database
- At each step above, read data via web services, and see that information is correct.
- store downloaded files
- verify against previous downloaded files (eg run diff to see changes.)
- for each database created
- Test an ODTools created series
- OD Tools
- Use test script to examine each of the four databases, to see that access works, and that new datasets can be created
- Use web services to check that ODTools created web services are correctly represented, and available
- Hydroobjects
- Before ODTools, Load each of the four web, test to make sure information can be retrieved, and matches the load
- After ODTools has added, test the newly added series, and the previous series
- DASH
- Generate the shapefiles, create the map
- Add the network
- use an automation program to run the
- Tests
- Download CSV, the plot
- Plot, then download file
- Add to cart, then plot
- Add to cart, download csv for a cart station
- Add to cart, download CSV for a non-cart station
- others?
- Test multivariable