Применение T при разработке тестов для LSB Desktop
Система T2C использовалась (и используется в настоящее время) при разработке тестов для интерфейсных операций ("интерфейсов") библиотек Linux, входящих в стандарт Linux Standard Base (LSB). C её помощью подготовлены тесты базовой функциональности для следующих библиотек:
Glib (libglib-2.0);
GModule (libgmodule-2.0);
ATK (libatk-1.0);
Fontconfig (libfontconfig).
В Таблице 2 представлены результаты тестирования. Описания найденных ошибок опубликованы на http://linuxtesting.ru/results/impl_reports.
Библиотека | Версия | Всего интерфейсов | Протестировано | Найдено ошибок в реализации |
libatk-1.0 | 1.19.6 | 222 | 222 (100%) | 11 |
libglib-2.0 | 2.14.0 | 847 | 832 (98%) | 13 |
libgmodule-2.0 | 2.14.0 | 8 | 8 (100%) | 2 |
libfontconfig | 2.4.2 | 160 | 133 (83%) | 11 |
Всего | 1237 | 1195 (97%) | 37 |
Таблица 2. Результаты тестирования LSB библиотек тестами T2C.
Примечание 1. В столбце "Версия" указывается последняя версия соответствующей библиотеки на момент публикации тестового набора. Количество найденных ошибок указано именно для этой версии. По обнаруженным ошибкам идёт активная работа совместно с разработчиками соответствующих библиотек, так что в более поздних версиях некоторые или даже все из этих ошибок могут быть исправлены.
Примечание 2. В столбце "Всего интерфейсов" указано общее количество входящих в LSB интерфейсных операций ("интерфейсов") библиотеки, включая и недокументированные. Практически все документированные интерфейсы были протестированы.
Средние затраты на полный цикл разработки теста (от разметки и анализа требований до отлаженного кода теста) для одного интерфейса составили порядка 0,5-1 человеко-дня.
Отметим, что интерфейсы в документации по данным библиотекам далеко не всегда описаны подробно. В среднем для каждого интерфейса было выделено 2-3 элементарных требования.
Сведения о количестве выделенных элементарных требований к тестируемым интерфейсам и о покрытии этих требований представлены в Таблице 3.
Библиотека |
Выделено требований |
Проверено требований |
Покрытие по требованиям, % |
libatk-1.0 |
515 |
497 |
96% |
libglib-2.0 |
2461 |
2290 |
93% |
libgmodule-2.0 |
21 |
17 |
80% |
libfontconfig |
236 |
177 |
75% |
Всего |
3233 |
2981 |
92% |