Em um único "teste de comportamento" você está misturando várias ideias. Teste de segurança (acesso ...), monitoramento de aplicativo (tempo de resposta ...), conformidade de infraestrutura (arquivo / serviço deve estar presente ...).
Como você está indo para o infra como um código de versão, você deve primeiro testá-lo como qualquer código, e o serverspec é uma boa ferramenta para isso. Eu pessoalmente prefiro testinfra, o framework equivalente baseado em Python. Há outros, como goss, robotframework, inspec ... Lá você pode testar muitas coisas: ouvir a porta 80, serviço em execução, arquivo de configuração existe. E mais, desde que você pode ligar qualquer parte do código, você pode ler um arquivo de configuração e verificar se o usuário X tem acesso ao banco de dados Y, mas não ao banco de dados Z.
Quanto ao tempo de resposta, que é um tópico de monitoramento, se for sobre o ambiente ao vivo, ou teste de carga, se for sobre o teste de preparo antes da ativação. Existem muitas possibilidades de monitoramento, como o nagios, o zabbix ... Para testes de carga, eu prefiro o gafanhoto.