В настоящее время я пишу Unit Test для проверки соединения между клиентом и сервером. На данный момент у меня есть следующие тесты; isConnectionSuccessful, isDisconnectionSuccesful и isReconnectionSuccesful.Использует геттер, но не назначает неправильное использование возвращаемого значения?
Чтобы попытаться сократить повторение, я создал геттер для подключенного клиента. Поскольку геттер проверяет, подключен ли клиент, я решил просто вызвать его в isConnectionSuccesful, но это означает, что клиент возвращается без необходимости. Однако для других тестов этот подход идеально подходит.
Согласны ли вы с этим подходом и просто не присваиваете значение от геттера для isConnectionSuccessful или это ошибка дизайна?
Просто уточнить у меня есть следующие тесты/методы:
isConnectionSuccessful
//call getConnectedClient
isDisconnectionSuccessful
//call getConnectedClient and assign it
//disconnect logic....
isReconnectionSuccessful
//call getConnectionClient and assign it
//disconnect
//reconnect
getConnectedClient
//instantiate client
//check it is connected
//return client
Я не вижу, как это не нужно, геттер должен вернуть значение. Если у вас есть геттер с именем 'getClient'; он должен вернуть объект клиента. –
Да, вот в чем проблема; имеет смысл использовать его для тестов isDisconnectionSuccessful и isReconnectionSuccessful, поскольку они требуют клиентского объекта, но для теста isConnectionSuccessful, хотя код точно такой же, и имеет смысл мне просто вызвать метод для уменьшения повторения, который он приводит к клиенту возвращаемый объект, который isConnectionSuccessful ничего не делает. В результате я предполагаю, что это ошибка дизайна? – LDM91