Я утешу тебя, Маркус: это нормально, что клиенты вначале передумают. Самое смешное, что даже со временем единственное, о чем они не передумали, - это постоянно менять свое мнение о вещах.
Так что не беспокойтесь, что некоторая часть ваших тестов пойдет в корзину вместе с реализацией, потому что она будет такой же на более поздних этапах. Что вы можете сделать как разработчик / BA / что угодно, это попытаться как можно быстрее указать им правильное направление, обсудить с ними что-то, чтобы вы не создавали слишком много «бесполезных» вещей.
Особенно, если вы работаете очень гибко, требования могут меняться от итерации к итерации, это ни в коем случае не должно заставлять вас думать, что тесты бесполезны на любой стадии проекта.
Кроме того, тесты могут обновляться при изменении требований. Люди должны начать воспринимать тесты более серьезно (это srs business, k ?!) и осознавать, что это то, что: а) это не просто для того, чтобы раздражать вас, б) должно развиваться вместе с проектом, потому что это, скорее всего, спасет вас много неприятностей.
Прототипы, предложенные Ишаем, являются хорошим решением. Иногда. НО вам действительно нужно остерегаться. Во многих ситуациях, когда клиент видит прототип, который ему нравится / очень похож на то, что он хочет, он подумает: «Вау, ты почти готов! Когда мы сможем его запустить?»? И тогда им действительно сложно объяснить, что это всего лишь прототип и что вам нужно начинать с нуля. Во многих случаях люди просто начинают использовать прототип в качестве основного проекта, и им не хочется добавлять отсутствующие тесты или улучшать существующую кодовую базу. Именно так было создано приложение, с которым я сейчас работаю (уже более 10 лет!).