I am a founder of https://brokee.io. We provide hands-on technical assessments for system engineers, so that’s why I am writing this post in DevOps and SRE topic. While I’d be grateful for feedback on the product (ping me if you’d like to try our tests), coming here with a technical question.
I want to automatically evaluate our tests. We provide broken IT infrastructure, engineer/candidate has to fix problems and then we check how the system was fixed. Our infrastructure is built on Kubernetes, but tests can be in the form of an isolated linux machine, Kubernetes environment or Cloud environment.
Currently, automated evaluation is done only on endpoints - e.g. we check if some URL is working, DNS is correct, etc., whatever we can reach via network request. I can’t check if some files are present or those were changed. I am wondering if there is some software I am not aware of, I will share some ideas I have in mind:
1. I found https://kubeshop.github.io/testkube/test-types, but most of test types are still network-related
- I used Ansible in the past that can do almost anyhting, but I think it’s not suitable for containerized environments, and generally it’s a configuration tool rather than testing tool
- Currently, I am just writing some dirty python code for my needs (not a professional developer). It’s a single service that is running and executing tests when candidates submit their results. Testkube I shared above is tempting because it’s a framework and has database to store results for all test executions.
- Most of tests will have some sort of a distributed environment, so I am thinking perhaps I need some local agents for test executions that I can call remotely instead of a single service.
Sorry for a potentially messy post, any “swiss knife” tools that come to your mind to do different kinds of testing of remote systems?