Welcome to Aspen Capital's Test Automation Engineer project. This assignment will help us better assess your technical and design skills. We recommend that you focus on the requirements listed below, and if time permitting, work on any additional features of your own choosing. These additional features can be enhancements to the basic framework, setup to run in a CI/CD pipeline, etc. If you have any questions or something doesn't seem clear, don't hesitate to reach out. This is an exercise in order to get to know you technically. Have fun with it. If you have a public API you like better, feel free to use it. The suggested one is just a suggestion.
You are an independent testing consultant who has been hired to develop an automated testing framework for a weather data API. The company hopes to provide the API to companies to integrate into their products. There is a lot of change behind the API as we innovate and the company is very concerned about regression risks as the stability and accuracy of the API is very important to sales opportunities.
-
We would like the application to be tested against the description and risks above. But that is only a starting place. Recommend any funtional or non-functional tests you see as approprite to help build out a complete testing program. If time allows, add any additional documentation, diagrams, or models, that describe the work you did or your recommendations.
-
Make any simplifying choices you need to match the scope of the project. For example, pick a subset of the API to focus on but document your decision as to why you consider this the "core" of the API, for example.
-
You can use the language and framework of your choice.
-
Make sure that your test scenarios and code are clear, demonstrate good practices, and that you include a README file explaining how to build and run your solution.
The API is available at https://openweathermap.org/api.
-
Your submission should be accessible in a public git repository that includes a README.md with all the pertinent information of how to run your application. The expectation is that we can easily follow the steps provided and run the application without any guesswork.
-
If your submission does include additional artifacts that are not represented within the repository - the README should provide information on how to retrieve and access these items.
-
Details on anything further that you would like to achieve given more time, including any trade-offs that you may have made
Good luck and thank you for your time - we look forward to seeing your submission.