Чтобы очистить всю базу данных (очевидно, не для производства), вы можете использовать xdmp.forestClear
.
Чтобы очистить только временные документы одной конкретной временной коллекции: переберите их (возможно, партиями) и используйте temporal.documentWipe
.
Возможно, вам придется сначала «защитить» каждый документ, используя temporal.documentProtect
с нулевой секундной продолжительностью.
НТН!
Для.NET Microsoft имеет Pex, который, надо надеяться, пойдет господствующая тенденция для.NET 4.0, наряду с Контрактами Кода. Я настоятельно рекомендую просмотр ролика Канала 9.
Это ударяет меня, что этот вид вещи очень хорош для очень управляемых данными классов - синтаксические анализаторы и т.д. Я не вижу, что очень часто начинался бы с ним, но полезный инструмент, чтобы иметь в Вашем складе оружия, тем не менее.
Для C# (или.NET в целом), PEX мог бы быть тем инструментом. Это работает на уровне IL и пытается пробиться в каждое ответвление. Это успешно раскрыло широкий спектр ошибок (в BCL и т.д.).
Хотя это кажется counter-intuituve, можно также интересоваться случайными платформами генерации тестов. Исследование доказало, что может быть столь эффективно при нахождении ошибок, чем систематические подходы на основе покрытия, как Вы предлагаете.
Проверьте Randoop и для.NET и для Java. Это работает путем генерации более или менее случайной последовательности вызовов метода, и проверяет контракты, отказывает и т.д. Это полностью автоматически.
Также можно хотеть проверить некоторые другие случайные инструменты тестирования на основе QuickCheck, например, для Java, Scala, F#. это более подобно Pex, т.е. Вы даете спецификацию или параметризованный модульный тест, и инструмент проверяет его на многие сгенерированные входные параметры.
Я нашел, что этот "параметрический" способ записать модульные тесты является на самом деле намного более естественным по крайней мере в 60% случаев и находит партии большим количеством ошибок.