Там кто-либо - автоматизированные платформы поблочного тестирования для тестирования внутренней платформы поточной обработки?

Мы создали общую платформу поточной обработки, чтобы справиться, как мы хотим использовать потоки в наших приложениях. Есть ли какие-либо платформы там как gtest или cppunit, которые только фокусируются на потоках поблочного тестирования, пулах потоков, распараллеливают очереди и такой?

Прямо сейчас я просто отчасти вручную прохожу некоторые шаги, что я знаю, что должен покрыть и сделать регистрации кода, чтобы удостовериться, что определенные условия соблюдены (как значения, не повреждаются b/c, к совместно используемому ресурсу получили доступ одновременно два или больше потока сразу), Если я не могу создать категорическую проверку, затем я ступаю через отладчик, но это кажется, что тестирует в 1990-х.

Я хотел бы более систематически протестировать функциональность платформы поточной обработки, поскольку это - внутренняя функциональность, которая не могла бы совпасть со всеми платформами поточной обработки, но я также хочу протестировать общую функциональность, которую должны иметь все платформы поточной обработки (как не заведение в тупик, данные не повреждения иначе рассчитывают, каковы они должны быть, и т.д....).

Любые предложения значительно ценились бы.

6
задан Georg Fritzsche 13 January 2010 в 20:26
поделиться

2 ответа

Если ваши потоки построены на OpenMP, вы можете использовать Vivamp для статической проверки.

Но вы хотите динамическую проверку с модульными тестами. Я не знаю о любых существующих рамках для этой цели. Вы можете катиться своим собственным с одним из множества тестовых структур единиц, но было бы трудно сделать его надежным. Intel есть набор параллельных инструментов разработки, которые могут представлять интерес, но я никогда не использовал их. Они говорят , что они могут помочь с модульными тестами из визуальной студии.

1
ответ дан 17 December 2019 в 20:32
поделиться

Если вы пишете библиотеку Threading, вы должны отладить ее самостоятельно. Резьбовые библиотеки не так много целей, как программы общего назначения = D, поэтому вы не найдете конкретную структуру тестирования единиц для вашей конкретной проблемы: D

после этого отказ от ответственности. Если у вас работают на Solaris / OSX или FreeBSD .... DTRace сделает его тривиальным для тестирования подразделения вашей библиотеки.

1
ответ дан 17 December 2019 в 20:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: