Difference between revisions of "RU/development/qa/vcltesttool/introduction"
(переводим...) |
|||
(58 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | <section begin=title /><noinclude>{{DISPLAYTITLE:Контроль качества: </noinclude>Введение для начинающих пользователей<noinclude>}}</noinclude><section end=title />{{BreadCrumbL10n}} |
− | |||
− | |||
− | {{ | ||
− | |||
− | |||
{{RU/vcltesttool/vcltesttooltoc | {{RU/vcltesttool/vcltesttooltoc | ||
− | |ShowPrevNext= | + | |ShowPrevNext=block |
− | |ShowPrevPage= | + | |ShowPrevPage=block |
− | | | + | |PrevPage=RU/development/qa/vcltesttool |
− | |NextPage=RU/qa/vcltesttool/developer | + | |NextPage=RU/development/qa/vcltesttool/developer |
|ShowNextPart=none | |ShowNextPart=none | ||
|ShowPrevPart=none | |ShowPrevPart=none | ||
Line 16: | Line 11: | ||
=Инструментарий для автоматического тестирования OpenOffice.org= | =Инструментарий для автоматического тестирования OpenOffice.org= | ||
= О TestTool = | = О TestTool = | ||
− | '''TestTool''' - это программа, предназначенная для автоматизированного тестирования | + | '''TestTool''' - это программа, предназначенная для автоматизированного тестирования {{OOo}}. TestTool взаимодействует через TCP/IP-интерфейс с {{OOo}} и выполняет тестирование установленного на PC {{OOo}}. Текущая версия TestTool предназначена для работы с OpenOffice.org 3.0 и выше. Однако, в будущем в {{OOo}} могут быть внесены несовместимые изменения и потребуется обновить версию TestTool. |
− | TestTool связывается с | + | TestTool связывается с {{OOo}}, используя SlotIDs, UniqueIDs, и HelpIDs для управления каждым пунктом меню, окнами, диалогами, и диалоговыми параметрами в {{OOo}}. Идентификаторы генерируются автоматически в {{OOo}} построителями процессов или назначаются разработчиками. |
Line 31: | Line 26: | ||
|- | |- | ||
| '''UniqueIDs''' | | '''UniqueIDs''' | ||
− | |Разработчики могут назначать UniqueID элементам управления, которые не имеют собственного HelpID, чтобы TestTool мог идентифицировать данный | + | |Разработчики могут назначать UniqueID элементам управления, которые не имеют собственного HelpID, чтобы TestTool мог идентифицировать данный контрол. |
|} | |} | ||
− | Вы можете создать скрипт теста для TestTool на языке программирования StarBasic (подобный VisualBasic). Некоторые команды доступны для TestTool, например, получить или разместить информацию в элементе управления | + | Вы можете создать скрипт теста для TestTool на языке программирования StarBasic (подобный VisualBasic). Некоторые команды доступны для TestTool, например, получить или разместить информацию в элементе управления {{OOo}}. Есть [[VCLTesttool/API_reference|полный список доступных команд, описывающий внутренние команды, методы, и функции TestTool [en]]]. Вы можете симулировать большинство действий мыши и клавиатуры из TestTool, а так же собирать информацию из элементов управления или изменять установки по умолчанию в {{OOo}}. Иными словами, TestTool позволяет симулировать поведение пользователя {{OOo}}. |
= Расположение TestTool = | = Расположение TestTool = | ||
Line 48: | Line 43: | ||
Запустите программу | Запустите программу | ||
− | {{ | + | {{DocLinux| '''testtool.bin'''}} |
или | или | ||
− | {{ | + | {{DocWindows| '''testtool.exe'''}} |
или | или | ||
− | {{ | + | {{DocOSX | скопируйте скрипт ''soffice'' в ''testtool'' и запустите его.}} |
= Установка TestTool = | = Установка TestTool = | ||
Line 59: | Line 54: | ||
После запуска TestTool выполняет файл настроек | После запуска TestTool выполняет файл настроек | ||
− | {{ | + | {{DocLinux| '''.testtoolrc'''}} |
или | или | ||
− | {{ | + | {{DocWindows| '''testtool.ini'''}} |
Если ваш файл настроек TestTool расположен в том же каталоге, что и исполняемые файлы TestTool, то он автоматически буде скопирован в каталог | Если ваш файл настроек TestTool расположен в том же каталоге, что и исполняемые файлы TestTool, то он автоматически буде скопирован в каталог | ||
− | {{ | + | {{DocLinux| ''home''}} |
или | или | ||
− | {{ | + | {{DocWindows| ''профиль''}} |
− | {{ | + | {{DocLinux| '''Только для Linux''': Если вы получили сообщение, аналогичное этому:<br> |
"''Couldn't bootstrap uno servicemanager for reason : Couldn't create registry file ...services.rdb for writing"'',<br> | "''Couldn't bootstrap uno servicemanager for reason : Couldn't create registry file ...services.rdb for writing"'',<br> | ||
убедитесь, что вы используете '''nfslock'''.<br> | убедитесь, что вы используете '''nfslock'''.<br> | ||
Line 81: | Line 76: | ||
= Настройка TestTool = | = Настройка TestTool = | ||
− | Выберите | + | Выберите {{Menu|Extra|Settings|Profile}}. |
{| class="prettytable" | {| class="prettytable" | ||
− | + | !colspan="2" | [[Image: Testtool-option-profile.jpg]] | |
|- | |- | ||
|1. '''Profile:''' | |1. '''Profile:''' | ||
Line 91: | Line 86: | ||
|2. '''Log base directory''': | |2. '''Log base directory''': | ||
|Введите путь, куда будут сохраняться результаты тестов.<br>Например:<br> | |Введите путь, куда будут сохраняться результаты тестов.<br>Например:<br> | ||
− | {{ | + | {{DocLinux|/opt/qa/qatesttool/errorlog/mymachine}} |
или | или | ||
− | {{ | + | {{DocWindows|d:\qa\qatesttool\errorlog\mymachine}} |
|- | |- | ||
|3. '''Base directory''': | |3. '''Base directory''': | ||
|Введите полный путь к ''Окружению TestTool'' ('''БЕЗ завершающего слэша!'''). <br>Например:<br> | |Введите полный путь к ''Окружению TestTool'' ('''БЕЗ завершающего слэша!'''). <br>Например:<br> | ||
− | {{ | + | {{DocLinux| '''/opt/qa/qatesttool'''}} |
или | или | ||
− | {{ | + | {{DocWindows| '''d:\qa\qatesttool'''}} |
|- | |- | ||
|4. '''Default HID directory''': | |4. '''Default HID directory''': | ||
Line 107: | Line 102: | ||
При необходимости можно изменить эти настройки в соответствующем конфигурационном файле | При необходимости можно изменить эти настройки в соответствующем конфигурационном файле | ||
− | {{ | + | {{DocLinux| '''.testtoolrc'''}} |
− | {{ | + | {{DocWindows| '''testtool.ini'''}} |
Line 119: | Line 114: | ||
= Автоматизированные креш-отчёты = | = Автоматизированные креш-отчёты = | ||
− | : Выберите меню | + | : Выберите меню {{Menu|Extra|Settings|Crashreport}}. |
Line 146: | Line 141: | ||
В последствии можно отредактировать все эти параметры в конфигурационных файлах | В последствии можно отредактировать все эти параметры в конфигурационных файлах | ||
− | {{ | + | {{DocLinux| '''.testtoolrc'''}} |
− | {{ | + | {{DocWindows| '''testtool.ini'''}} |
Line 161: | Line 156: | ||
Есть два варианта: | Есть два варианта: | ||
− | Выберите меню | + | Выберите меню {{Menu|Extra|Settings|Misc}}. |
{| class="prettytable" | {| class="prettytable" | ||
Line 173: | Line 168: | ||
В последствии можно отредактировать все эти параметры в конфигурационных файлах | В последствии можно отредактировать все эти параметры в конфигурационных файлах | ||
− | {{ | + | {{DocLinux| '''.testtoolrc'''}} |
− | {{ | + | {{DocWindows| '''testtool.ini'''}} |
<nowiki>[</nowiki>OOoProgramDir] | <nowiki>[</nowiki>OOoProgramDir] | ||
Line 200: | Line 195: | ||
!'''Описание''' | !'''Описание''' | ||
|- | |- | ||
− | | | + | | {{Key|F5}} |
|''Stert'' | |''Stert'' | ||
|Запуск скрипта, создание нового или открытие старого файла результатов, и вставка результатов теста в файл результатов. | |Запуск скрипта, создание нового или открытие старого файла результатов, и вставка результатов теста в файл результатов. | ||
− | | | + | |{{Key|Shift|F5}} |
|''Cancel'' | |''Cancel'' | ||
|Завершение выполнение скрипта | |Завершение выполнение скрипта | ||
|- | |- | ||
− | | | + | |{{Key|F8}} |
|''Single stepping'' | |''Single stepping'' | ||
|Запуск пошагового выполнения скрипта. | |Запуск пошагового выполнения скрипта. | ||
− | | | + | |{{Key|Ctrl|F5}} |
|''Interrupt'' | |''Interrupt'' | ||
|Прерывание выполняемого сценария. | |Прерывание выполняемого сценария. | ||
|- | |- | ||
− | | | + | |{{Key|F9}} |
|''Set / Select a break point'' | |''Set / Select a break point'' | ||
|Создание точки останова (красный круг) в скрипте на синем бордюре с левой стороны. | |Создание точки останова (красный круг) в скрипте на синем бордюре с левой стороны. | ||
− | | | + | |{{Key|Shift|F7}} |
|''Previous Error'' | |''Previous Error'' | ||
|Перейти к предыдущей ошибке в сценарии. | |Перейти к предыдущей ошибке в сценарии. | ||
|- | |- | ||
− | | | + | |{{Key|F10}} |
|''Single step over procedures'' | |''Single step over procedures'' | ||
|Выполнение по одной подпрограмме скрипта за один раз. | |Выполнение по одной подпрограмме скрипта за один раз. | ||
− | | | + | |{{Key|Shift|F8}} |
|''Next Error'' | |''Next Error'' | ||
|Перейти к следующей ошибке после синтаксической ошибки в скрипте. | |Перейти к следующей ошибке после синтаксической ошибки в скрипте. | ||
Line 230: | Line 225: | ||
= Файл результатов = | = Файл результатов = | ||
− | |||
− | + | TestTool автоматически сохраняет результаты в файл результатов в течении всего времени выполнения тестов. Имя файлу результатов даётся по имени выполняемого файла сценария (*.bas-файла), результаты которого сохраняются; при этом файлу результатов даётся другое расширение: '''*.res'''. | |
+ | |||
+ | Например: ''{{Menu|first.bas|first.res}}''. | ||
+ | |||
+ | Для установки пути сохранения файла результатов, выберите меню {{Menu|Extra|Settings|Profile}} и введите путь в графу '''Log Base directory'''. | ||
− | + | Если файл результатов уже есть, то файл будет открыт и новые результаты будут добавлены в начало файла. | |
+ | |||
+ | Результаты представляются в виде иерархического дерева. Каждую ветвь дерева можно развернуть для просмотра её содержимого. Для этого нужно щёлкнуть по '''[+]''' в дереве. Чтобы свернуть ветвь, нужно щёлкнуть по '''[-]'''. | ||
[[Image:tt_result.png]] | [[Image:tt_result.png]] | ||
− | * | + | |
− | * | + | *Первый этап - ''Чтение файлов''. Разверните его, чтобы просмотреть список файлов. Если список окрашен в оранжевый цвет, значит файлы (*.win / *.sid) содержат ошибки. Сумма ошибок показывается в конце теста как предупреждения, произошедшие в ходе инициализации. |
− | * | + | * Следующий вывод содержит автоматически сгенерированное вступление ''Запуск процедуры''. В нём отображается информация о версии TestTool, пути установки OpenOffice.org, а так же о запущенном приложении. Отображается локаль Офиса и системы. |
− | * | + | * Каждая запись, которой предшествует '''[+]''' является блоком тестов. Если блок тестов окрашен в цвет отличный от чёрного, значит этот тест содержит ошибки. |
− | * | + | * Оранжевый блок тестов указывает на одно или больше предупреждений. Чтобы увидеть, где произошла ошибка, раскройте секцию и изучите лог предупреждений, который следует отправить разработчикам данного тестового скрипта. Чтобы перейти непосредственно к месту скрипта, где произошла ошибка, дважды щёлкните по этому предупреждению. |
− | * | + | * Светло-зелёный цвет блока обозначает QAErrorLog, вставленный разработчиками в данный раздел тестов, чтобы дать тестерам дополнительную информацию (например - о возникших ошибках и способах их обхода). |
− | * | + | * Светло-синий цвет блока обозначает утверждение о предоставлении дополнительной информации для тестирования и отладки сборки OpenOffice.org. |
− | * | + | * Красный блок показывает наличие одной или более ошибок. Раскрытие данной ветки дерева покажет подробную информацию о проблемах. В примере результирующего файла ошибка произошла, когда TestTool не нашёл слот, потому что в нём есть опечатка "ToosOptions" вместо "Too'''l'''sOptions". |
+ | * Раскрывайте красную группу по щелчку на '''[+]''' напротив группы уровень за уровнем (главный - блок тестов... - подпрограмма... - ...) для просмотра всех ошибок. Вы так же можете увидеть, что TestTool получил в ответ от OpenOffice.org, так как TestTool может работать запускать следующие тестовые блоки без вывода окон и диалогов. Например: | ||
** the WORKINGWINDOW "Untitled2 - OpenOffice.org Writer" is closed (geschlossen = closed) | ** the WORKINGWINDOW "Untitled2 - OpenOffice.org Writer" is closed (geschlossen = closed) | ||
** Explanation: | ** Explanation: | ||
** the working document is closed | ** the working document is closed | ||
** The TestTool then started the next testcase at the base state of OpenOffice.org (that is, with one open document and no open dialog). | ** The TestTool then started the next testcase at the base state of OpenOffice.org (that is, with one open document and no open dialog). | ||
− | * | + | * В конце теста выводятся номера ошибок и предупреждений. |
− | = | + | = Запуск сценария тестов из командной строки = |
− | + | ||
+ | Для запуска сценария тестирования из командной строки используйте следующий синтаксис: | ||
{| class="prettytable" | {| class="prettytable" | ||
− | | | + | | |
− | | '''<nowiki>testtool.exe [/port=xxx /host=xxx] startprogram /run</nowiki>''' '''<nowiki>[/result xxx]</nowiki>''' '''<nowiki>[/printlog]</nowiki>''' | + | | '''<nowiki>testtool.exe [/port=xxx /host=xxx] startprogram /run</nowiki>''' '''<nowiki>[/result xxx]</nowiki>''' '''<nowiki>[/printlog]</nowiki>''' |
+ | |||
+ | |- | ||
+ | | <div align="right">'''/Port '''</div> | ||
+ | | Указывается com-порт на машине, выделяемый TestTool для связи с OpenOffice.org. Если вы опустите этот параметр, TestTool будет использовать соответствующий параметр из файла | ||
+ | {{DocLinux| '''.testtoolrc'''}} | ||
+ | или | ||
+ | {{DocWindows| '''testtool.ini'''}} | ||
− | |- | + | |- |
− | | <div align="right">'''/ | + | | <div align="right">'''/Host '''</div> |
− | | | + | | Указывается имя хоста машины, на которой установлен тестируемый OpenOffice.org. Если OpenOffice.org находится на той же машине, что и TestTool, введите '''localhost'''. Если вы опустите этот параметр, TestTool будет использовать соответствующий параметр из файла |
+ | {{DocLinux| '''.testtoolrc'''}} | ||
+ | или | ||
+ | {{DocWindows| '''testtool.ini'''}} | ||
+ | но только в случае использования ''localhost''! | ||
− | |- | + | |- |
− | | <div align="right">''' | + | | <div align="right">'''Startprogram '''</div> |
− | | | + | | Указания файла-сценариев '''*.bas''', который необходимо запустить на выполнение. |
− | |- | + | |- |
− | | <div align="right">''' | + | | <div align="right">'''/run'''</div> |
− | | | + | | Запуск сценариев тестирования и запись результатов в результирующий файл, и выход из TestTool по окончании тестов. |
− | |- | + | |- |
− | | <div align="right">'''/ | + | | <div align="right">'''/result'''</div> |
− | | | + | | Ограничивает количество тестов до Х исключая уже выполненные. Данные о выполненных тестах будут взяты из файла результатов. |
− | |- | + | |- |
− | | <div align="right">'''/ | + | |<div align="right">'''/printlog'''</div> |
− | | | + | |{{DocLinux| '''Писать данные, записанные в журналы, в стандартный вывод'''<br>***** UNIX only ! *****}} |
− | |||
− | | | ||
− | |||
− | |} | + | |} |
{| class="prettytable" | {| class="prettytable" | ||
− | | | + | | Например: |
− | | '''testtool.exe /port=12481 /host=localhost /opt/qatesttool/writer/update/w_update.bas /run''' | + | | '''testtool.exe /port=12481 /host=localhost /opt/qatesttool/writer/update/w_update.bas /run''' |
− | |- | + | |- |
− | | | + | | |
− | | | + | | TestTool запускает сценарий '''w_update.bas''' на локальной машине через порт 12481, и завершает TestTool по окончании тестов. |
+ | |} | ||
− | + | = Пакетное выполнение сценариев тестирования = | |
− | + | : Примеры для Win32 и Unix приведены в статье http://hg.services.openoffice.org/DEV300/file/1467f46f8817/testautomation/tools/run_tests. | |
− | + | = Тестирование Non-Product-сборки = | |
− | + | Non-Product Version / [[Non_Product_Build|Non-Product Build]] - версия не для распространения, содержащая дополнительный отладочный код. | |
− | + | Предназначена для технических специалистов, отличается большим размером и низкой производительностью. | |
− | * | + | * Определите файл, где вам необходимо хранить переменные отладки для OpenOffice.org, включив соответствующую секцию в '''''win.ini'''''-файле. (Если вы не имеете доступа к этому файлу, вы можете использовать переменные окружения.): |
<nowiki>[SV]</nowiki> | <nowiki>[SV]</nowiki> | ||
dbgsv<nowiki>=c:\</nowiki>dbgsv.ini | dbgsv<nowiki>=c:\</nowiki>dbgsv.ini | ||
dbgsvlog<nowiki>=c:\</nowiki>dbgsv.log | dbgsvlog<nowiki>=c:\</nowiki>dbgsv.log | ||
− | * | + | |
+ | * На платформе Linux/Unix/Win32 вы можете установить и сохранить переменные окружения: | ||
DBGSV_INIT=/some/path/dbgsv.ini | DBGSV_INIT=/some/path/dbgsv.ini | ||
DBGSV_LOG=/some/path/dbgsv.log | DBGSV_LOG=/some/path/dbgsv.log | ||
− | * | + | * В OpenOffice.org, нажмите {{Key|Shift|Ctrl|Alt|D}}, и выберите ''TestTool'' в списке '''Error '''. |
− | * | + | * В TestTool, соответствующая индикация будет светло-голубой. Чтобы вручную воспроизвести утверждение, выберите в ''списке'' '''Error '''. |
− | = | + | = Окружение TestTool = |
− | + | Окружение TestTool позволяет запускать сценарии, содержит скрипты тестов, и библиотеки (''включённых файлов''), с помощью которых проводится автоматическое тестирование OpenOffice.org. Окружение TestTool имеет отдельные модули для каждого приложения или области, которую вам необходимо протестировать в OpenOffice.org. Для проверки приложения OpenOffice.org, такого какWriter, потребуется только ''application module'' и модуль ''global''. | |
{| class="prettytable" | {| class="prettytable" | ||
− | ! | + | ! Имя модуля / Путь |
− | ! | + | ! Описание |
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
− | == | + | ==Модули приложений== |
|- | |- | ||
| '''dbaccess''' | | '''dbaccess''' | ||
− | | | + | | База данных / Источник Данных, работающие в OpenOffice.org |
|- | |- | ||
| '''spreadsheet''' | | '''spreadsheet''' | ||
− | | Calc ( | + | | Calc (Электронная таблица) |
|- | |- | ||
| '''chart2''' | | '''chart2''' | ||
− | | | + | | Диаграммы электронных таблиц |
|- | |- | ||
| '''graphics''' | | '''graphics''' | ||
− | | Impress ( | + | | Impress (приложение для создания презентаций) и Draw (графический редактор) |
|- | |- | ||
| '''math''' | | '''math''' | ||
− | | Math ( | + | | Math (редактор формул) |
|- | |- | ||
| '''extensions''' | | '''extensions''' | ||
− | | | + | | Работа с расширениями |
|- | |- | ||
| '''writer''' | | '''writer''' | ||
− | | Writer ( | + | | Writer (текстовый процессор, редактор HTML-документов и составных документов) |
|- | |- | ||
| '''xml''' | | '''xml''' | ||
− | | XML | + | | Поддержка формата XML-файлов для всего OpenOffice.org |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | |
− | == | + | |
+ | ==Общие модули== | ||
|- | |- | ||
| '''framework''' | | '''framework''' | ||
− | | | + | | Общая функциональность для всех приложений (например - галерей и расширений) |
|- | |- | ||
| '''global''' | | '''global''' | ||
− | | | + | | Все общие процедуры (например - запуск, инструменты, объявление файлов) |
|- | |- | ||
| '''tools''' | | '''tools''' | ||
− | | | + | | Полезные автономные приложения (hid.lst perl script) |
|} | |} | ||
− | |||
+ | |||
+ | Следующие подкатегории определены для модулей в окружении TestTool: | ||
{| class="prettytable" | {| class="prettytable" | ||
− | ! | + | ! Имя модуля / Путь |
− | ! | + | ! Описание |
|- | |- | ||
| '''required''' | | '''required''' | ||
− | | | + | | Тест ресурсов: Активирует все пункты меню и открывает все диалоги в проверяемом приложении. |
|- | |- | ||
| '''optional''' | | '''optional''' | ||
− | | | + | | Выполняет функции общего назначения для каждой функции в тестируемом приложении, в том числе по каждому пункту меню. |
|- | |- | ||
| '''tools''' | | '''tools''' | ||
− | | | + | | Подключает библиотеки, которые содержат общие подпрограммы, необходимые для всех сценариев тестирования в модулях или приложениях. |
|} | |} | ||
− | |||
− | + | Эти предопределённые имена так же могут находиться в других подкатегориях пути. Чаще всего имя директории является зеркальным отражением имени тестируемой области. | |
+ | |||
+ | Если вы нашли ''*.bas''-файл в одной из директорий, значит вы находитесь в модуле тестирования. То есть, модуль должен вклчать следующие каталоги / файлы: | ||
{| class="prettytable" | {| class="prettytable" | ||
− | ! | + | ! Имя модуля / Путь |
− | ! | + | ! Описание |
|- | |- | ||
− | | ''' | + | | '''*.bas''' |
− | | | + | | Содержит выполняемые сценарии тестирования. Для запуска данного скрипта, откройте *.bas-файл в TestTool, и нажмите {{Key|F5}} или выберите в меню {{Menu|Program|Start}}. |
|- | |- | ||
| '''inc''' | | '''inc''' | ||
− | | | + | | Содержит библиоткеи и любые ассоциированные файлы, требуемые при тестировании (включены в ''use''-метод в ''*.bas''-файле). |
|- | |- | ||
| '''input''' | | '''input''' | ||
− | | | + | | Файл данных, требуемых при тестировании. |
|- | |- | ||
| '''tools''' | | '''tools''' | ||
− | | | + | | Включает библиотеки, содержащие общие подпрограммы, используемые в сценариях тестирования (*.bas). Эти библиотеки должны быть в том же каталоге, что и скрипт теста. |
|} | |} | ||
− | == | + | |
− | + | == Общие модули == | |
+ | Параметр ''global-directory'' требуется для каждого теста. Этот каталог содержит главные процедуры для выполняемых сценариев тестирования, включённых в файл ''hid.lst'', являющегося декларацией, определяющей пункты меню, диалоги, элементы управления OpenOffice.org, а так же общие процедурные инструменты. | ||
{| class="prettytable" | {| class="prettytable" | ||
− | ! | + | ! Имя каталога |
− | ! | + | ! Описание |
|- | |- | ||
| '''hid''' | | '''hid''' | ||
− | | | + | | Содержит файл ''hid.lst''. |
|- | |- | ||
| '''input''' | | '''input''' | ||
− | | | + | | Содержит общие файлы, требующиеся TestTool. |
− | + | * переводит '''office language dependent''' умолчальный фильтр имён каждого приложения (''filters''-каталог) | |
− | * | + | * переводит '''office language dependent''' имена OLE-объектов (''olenames''-каталог) |
− | * | + | * фильтры для каждого графического формата, который может прочесть OpenOffice.org (''graf_inp''-каталог) |
− | * | ||
− | |||
− | |||
− | |||
|- | |- | ||
| '''sid''' | | '''sid''' | ||
− | | | + | | Включает в себя все декларации SlotID. |
|- | |- | ||
| '''system''' | | '''system''' | ||
− | | | + | | Содержит процедуры для запуска сценариев тестирования в inc-файлах. |
|- | |- | ||
| '''tools''' | | '''tools''' | ||
− | | | + | | Содержит общие процедуры в inc-файлах (Например: ''declare.bas''). |
|- | |- | ||
| '''update''' | | '''update''' | ||
− | | | + | | Содержит общие ресурсы для тестов в файлах (опции диалогов и мастеров) |
|- | |- | ||
| '''win''' | | '''win''' | ||
− | | | + | | Содержит все декларации HelpID. |
|} | |} | ||
− | = | + | =Конфигурирование файла настроек= |
− | + | ||
+ | Конфигурационный файл TestTool | ||
+ | {{DocLinux| '''.testtoolrc'''}} | ||
+ | {{DocWindows| '''testtool.ini'''}} | ||
+ | содержит несколько секций. | ||
+ | |||
+ | Имена секций заключены в квадратные скобки [...]. | ||
+ | |||
+ | Каждая секция содержит несколько записей на подобии: | ||
+ | EntryName=Value | ||
− | == GUI | + | == Платформа GUI == |
− | ''Current='' | + | ''Current='' зависит от платформы. |
Line 472: | Line 493: | ||
|- | |- | ||
− | | ''' | + | | '''Подсистема''' |
− | | ''' | + | | '''Значение''' |
− | | ''' | + | | '''Подсистема''' |
− | | ''' | + | | '''Значение''' |
|- | |- | ||
Line 563: | Line 584: | ||
|} | |} | ||
− | |||
− | + | {{SignTransYear|RU|Sancho|А. Е. Харламенков|2010}} | |
− | {{RU | ||
− | {{ | + | {{RUqaBottom}} |
Latest revision as of 19:56, 18 September 2011
Contents
- 1 Инструментарий для автоматического тестирования OpenOffice.org
- 2 О TestTool
- 3 Расположение TestTool
- 4 Установка TestTool
- 5 Настройка TestTool
- 6 Автоматизированные креш-отчёты
- 7 Выбор установки OpenOffice.org
- 8 Редактор TestTool
- 9 Запуск скрипта TestTool
- 10 Файл результатов
- 11 Запуск сценария тестов из командной строки
- 12 Пакетное выполнение сценариев тестирования
- 13 Тестирование Non-Product-сборки
- 14 Окружение TestTool
- 15 Конфигурирование файла настроек
Инструментарий для автоматического тестирования OpenOffice.org
О TestTool
TestTool - это программа, предназначенная для автоматизированного тестирования OpenOffice.org. TestTool взаимодействует через TCP/IP-интерфейс с OpenOffice.org и выполняет тестирование установленного на PC OpenOffice.org. Текущая версия TestTool предназначена для работы с OpenOffice.org 3.0 и выше. Однако, в будущем в OpenOffice.org могут быть внесены несовместимые изменения и потребуется обновить версию TestTool.
TestTool связывается с OpenOffice.org, используя SlotIDs, UniqueIDs, и HelpIDs для управления каждым пунктом меню, окнами, диалогами, и диалоговыми параметрами в OpenOffice.org. Идентификаторы генерируются автоматически в OpenOffice.org построителями процессов или назначаются разработчиками.
SlotIDs | Каждый пункт меню имеет SlotID который используется, например, чтобы открыть диалог или совершить действие. |
HelpIDs | Каждый элемент управления, окно или диалог автоматически получает HelpID для внутренней справочной системы. TestTool использует HelpIDs для идентификации конкретного элемента управления, окна или диалога. |
UniqueIDs | Разработчики могут назначать UniqueID элементам управления, которые не имеют собственного HelpID, чтобы TestTool мог идентифицировать данный контрол. |
Вы можете создать скрипт теста для TestTool на языке программирования StarBasic (подобный VisualBasic). Некоторые команды доступны для TestTool, например, получить или разместить информацию в элементе управления OpenOffice.org. Есть полный список доступных команд, описывающий внутренние команды, методы, и функции TestTool [en]. Вы можете симулировать большинство действий мыши и клавиатуры из TestTool, а так же собирать информацию из элементов управления или изменять установки по умолчанию в OpenOffice.org. Иными словами, TestTool позволяет симулировать поведение пользователя OpenOffice.org.
Расположение TestTool
Окружающая среда TestTool может быть проверена на Mercurial в openoffice.org, и находится в каталоге: testautomation; Или она доступна в виде отдельно пакета.
Приложение TestTool всегда доступно для загрузки. Для других платформ установка так же доступна. Просто используйте двоичный файл из каталога
.../{officepath}/program.
Запустите программу
или
или
Установка TestTool
Для установки TestTool, распакуйсте содержимое загруженного архива TestTool на локальный диск. Если TestTool планируют использовать несколько пользователей, скопируйте распакованный архив на сетевой диск.
После запуска TestTool выполняет файл настроек
или
Если ваш файл настроек TestTool расположен в том же каталоге, что и исполняемые файлы TestTool, то он автоматически буде скопирован в каталог
или
Настройка TestTool
Выберите Extra → Settings → Profile.
При необходимости можно изменить эти настройки в соответствующем конфигурационном файле
CurrentProfile=_profile_Default (...) [_profile_Default] LogBaseDir=/opt/qa/qatesttool/errorlog/mymachine BaseDir=/opt/qa/qatesttool HIDDir=/opt/qa/qatesttool/global/hid
Автоматизированные креш-отчёты
- Выберите меню Extra → Settings → Crashreport.
В последствии можно отредактировать все эти параметры в конфигурационных файлах
[Crashreporter] UseProxy=true ProxyServer=proxy.somewhere.de ProxyPort=8080 AllowContact=true ReturnAddress=you@somewhere.de
Выбор установки OpenOffice.org
Есть два варианта:
Выберите меню Extra → Settings → Misc.
1. OOo Program Dir | Выберите установку OpenOffice.org, предназначенного для тестирования. Например:
/Volumes/OpenOffice.org 2.0.app/Contents/MacOS |
В последствии можно отредактировать все эти параметры в конфигурационных файлах
[OOoProgramDir] Type=Path Current=/Volumes/OpenOffice.org 2.0.app/Contents/MacOS All=/Volumes/OpenOffice.org 2.0.app/Contents/MacOS
Редактор TestTool
TestTool использует подсветку синтаксиса для всего BASIC, StarBasic, и внутренних комманд TestTool. Подробная информация описана в разделе Внутренние команды, методы и функции TestTool [en]. Подсветка может увеличивать время загрузки больших файлов.
Запуск скрипта TestTool
Для запуска установленного OpenOffice.org используйте параметр для запуска TestTool из командной строки
-enableautomation
В среде TestTool запустится крипт с расширением *.bas. Для запуска скрипта загрузите *.bas-файл, и затем выполните этот скрипт через меню или комбинацию горячих клавиш.
Файл результатов
TestTool автоматически сохраняет результаты в файл результатов в течении всего времени выполнения тестов. Имя файлу результатов даётся по имени выполняемого файла сценария (*.bas-файла), результаты которого сохраняются; при этом файлу результатов даётся другое расширение: *.res.
Например: first.bas → first.res.
Для установки пути сохранения файла результатов, выберите меню Extra → Settings → Profile и введите путь в графу Log Base directory.
Если файл результатов уже есть, то файл будет открыт и новые результаты будут добавлены в начало файла.
Результаты представляются в виде иерархического дерева. Каждую ветвь дерева можно развернуть для просмотра её содержимого. Для этого нужно щёлкнуть по [+] в дереве. Чтобы свернуть ветвь, нужно щёлкнуть по [-].
- Первый этап - Чтение файлов. Разверните его, чтобы просмотреть список файлов. Если список окрашен в оранжевый цвет, значит файлы (*.win / *.sid) содержат ошибки. Сумма ошибок показывается в конце теста как предупреждения, произошедшие в ходе инициализации.
- Следующий вывод содержит автоматически сгенерированное вступление Запуск процедуры. В нём отображается информация о версии TestTool, пути установки OpenOffice.org, а так же о запущенном приложении. Отображается локаль Офиса и системы.
- Каждая запись, которой предшествует [+] является блоком тестов. Если блок тестов окрашен в цвет отличный от чёрного, значит этот тест содержит ошибки.
- Оранжевый блок тестов указывает на одно или больше предупреждений. Чтобы увидеть, где произошла ошибка, раскройте секцию и изучите лог предупреждений, который следует отправить разработчикам данного тестового скрипта. Чтобы перейти непосредственно к месту скрипта, где произошла ошибка, дважды щёлкните по этому предупреждению.
- Светло-зелёный цвет блока обозначает QAErrorLog, вставленный разработчиками в данный раздел тестов, чтобы дать тестерам дополнительную информацию (например - о возникших ошибках и способах их обхода).
- Светло-синий цвет блока обозначает утверждение о предоставлении дополнительной информации для тестирования и отладки сборки OpenOffice.org.
- Красный блок показывает наличие одной или более ошибок. Раскрытие данной ветки дерева покажет подробную информацию о проблемах. В примере результирующего файла ошибка произошла, когда TestTool не нашёл слот, потому что в нём есть опечатка "ToosOptions" вместо "ToolsOptions".
- Раскрывайте красную группу по щелчку на [+] напротив группы уровень за уровнем (главный - блок тестов... - подпрограмма... - ...) для просмотра всех ошибок. Вы так же можете увидеть, что TestTool получил в ответ от OpenOffice.org, так как TestTool может работать запускать следующие тестовые блоки без вывода окон и диалогов. Например:
- the WORKINGWINDOW "Untitled2 - OpenOffice.org Writer" is closed (geschlossen = closed)
- Explanation:
- the working document is closed
- The TestTool then started the next testcase at the base state of OpenOffice.org (that is, with one open document and no open dialog).
- В конце теста выводятся номера ошибок и предупреждений.
Запуск сценария тестов из командной строки
Для запуска сценария тестирования из командной строки используйте следующий синтаксис:
testtool.exe [/port=xxx /host=xxx] startprogram /run [/result xxx] [/printlog] | |
/Port
|
Указывается com-порт на машине, выделяемый TestTool для связи с OpenOffice.org. Если вы опустите этот параметр, TestTool будет использовать соответствующий параметр из файла
или |
/Host
|
Указывается имя хоста машины, на которой установлен тестируемый OpenOffice.org. Если OpenOffice.org находится на той же машине, что и TestTool, введите localhost. Если вы опустите этот параметр, TestTool будет использовать соответствующий параметр из файла
или но только в случае использования localhost! |
Startprogram
|
Указания файла-сценариев *.bas, который необходимо запустить на выполнение. |
/run
|
Запуск сценариев тестирования и запись результатов в результирующий файл, и выход из TestTool по окончании тестов. |
/result
|
Ограничивает количество тестов до Х исключая уже выполненные. Данные о выполненных тестах будут взяты из файла результатов. |
/printlog
|
Например: | testtool.exe /port=12481 /host=localhost /opt/qatesttool/writer/update/w_update.bas /run |
TestTool запускает сценарий w_update.bas на локальной машине через порт 12481, и завершает TestTool по окончании тестов. |
Пакетное выполнение сценариев тестирования
- Примеры для Win32 и Unix приведены в статье http://hg.services.openoffice.org/DEV300/file/1467f46f8817/testautomation/tools/run_tests.
Тестирование Non-Product-сборки
Non-Product Version / Non-Product Build - версия не для распространения, содержащая дополнительный отладочный код. Предназначена для технических специалистов, отличается большим размером и низкой производительностью.
- Определите файл, где вам необходимо хранить переменные отладки для OpenOffice.org, включив соответствующую секцию в win.ini-файле. (Если вы не имеете доступа к этому файлу, вы можете использовать переменные окружения.):
[SV] dbgsv=c:\dbgsv.ini dbgsvlog=c:\dbgsv.log
- На платформе Linux/Unix/Win32 вы можете установить и сохранить переменные окружения:
DBGSV_INIT=/some/path/dbgsv.ini DBGSV_LOG=/some/path/dbgsv.log
- В OpenOffice.org, нажмите ⇧ Shift + Ctrl + Alt + D , и выберите TestTool в списке Error .
- В TestTool, соответствующая индикация будет светло-голубой. Чтобы вручную воспроизвести утверждение, выберите в списке Error .
Окружение TestTool
Окружение TestTool позволяет запускать сценарии, содержит скрипты тестов, и библиотеки (включённых файлов), с помощью которых проводится автоматическое тестирование OpenOffice.org. Окружение TestTool имеет отдельные модули для каждого приложения или области, которую вам необходимо протестировать в OpenOffice.org. Для проверки приложения OpenOffice.org, такого какWriter, потребуется только application module и модуль global.
Имя модуля / Путь | Описание |
---|---|
Модули приложений | |
dbaccess | База данных / Источник Данных, работающие в OpenOffice.org |
spreadsheet | Calc (Электронная таблица) |
chart2 | Диаграммы электронных таблиц |
graphics | Impress (приложение для создания презентаций) и Draw (графический редактор) |
math | Math (редактор формул) |
extensions | Работа с расширениями |
writer | Writer (текстовый процессор, редактор HTML-документов и составных документов) |
xml | Поддержка формата XML-файлов для всего OpenOffice.org |
Общие модули | |
framework | Общая функциональность для всех приложений (например - галерей и расширений) |
global | Все общие процедуры (например - запуск, инструменты, объявление файлов) |
tools | Полезные автономные приложения (hid.lst perl script) |
Следующие подкатегории определены для модулей в окружении TestTool:
Имя модуля / Путь | Описание |
---|---|
required | Тест ресурсов: Активирует все пункты меню и открывает все диалоги в проверяемом приложении. |
optional | Выполняет функции общего назначения для каждой функции в тестируемом приложении, в том числе по каждому пункту меню. |
tools | Подключает библиотеки, которые содержат общие подпрограммы, необходимые для всех сценариев тестирования в модулях или приложениях. |
Эти предопределённые имена так же могут находиться в других подкатегориях пути. Чаще всего имя директории является зеркальным отражением имени тестируемой области.
Если вы нашли *.bas-файл в одной из директорий, значит вы находитесь в модуле тестирования. То есть, модуль должен вклчать следующие каталоги / файлы:
Имя модуля / Путь | Описание |
---|---|
*.bas | Содержит выполняемые сценарии тестирования. Для запуска данного скрипта, откройте *.bas-файл в TestTool, и нажмите F5 или выберите в меню Program → Start. |
inc | Содержит библиоткеи и любые ассоциированные файлы, требуемые при тестировании (включены в use-метод в *.bas-файле). |
input | Файл данных, требуемых при тестировании. |
tools | Включает библиотеки, содержащие общие подпрограммы, используемые в сценариях тестирования (*.bas). Эти библиотеки должны быть в том же каталоге, что и скрипт теста. |
Общие модули
Параметр global-directory требуется для каждого теста. Этот каталог содержит главные процедуры для выполняемых сценариев тестирования, включённых в файл hid.lst, являющегося декларацией, определяющей пункты меню, диалоги, элементы управления OpenOffice.org, а так же общие процедурные инструменты.
Имя каталога | Описание |
---|---|
hid | Содержит файл hid.lst. |
input | Содержит общие файлы, требующиеся TestTool.
|
sid | Включает в себя все декларации SlotID. |
system | Содержит процедуры для запуска сценариев тестирования в inc-файлах. |
tools | Содержит общие процедуры в inc-файлах (Например: declare.bas). |
update | Содержит общие ресурсы для тестов в файлах (опции диалогов и мастеров) |
win | Содержит все декларации HelpID. |
Конфигурирование файла настроек
Конфигурационный файл TestTool
содержит несколько секций.
Имена секций заключены в квадратные скобки [...].
Каждая секция содержит несколько записей на подобии:
EntryName=Value
Платформа GUI
Current= зависит от платформы.
UNIX | Win32 | ||
Подсистема | Значение | Подсистема | Значение |
Solaris SPARC | 01 | Win 95 | 100 |
SCO UNIX | 02 | Win 98 | 395 |
Linux | 03 | Win NT 3 | 351 |
AIX | 04 | Win NT 4 | 400 |
Solaris x86 | 05 | Win SE | 410 |
Irix | 06 | Win ME | 490 |
HP | 07 | Win 2000 | 500 |
FreeBSD | 08 | Win XP | 501 |
Mac OS X | 12 | Win Server 2003 | 502 |
Linux PPC | 13 | ||
NetBSD | 14 | ||
Linux 64 bit | 15 | ||
Linux SPARC | 16 | ||
eComStation | 17 |