2.1 Структура скрипта

Назад Содержание Дальше

При наличии подготовленного фрейма уже имеет смысл переходить непосредственно к написанию сценариев автоматического тестирования. Данные сценарии пишутся в файлах с расширением *.t. Это предусмотренный SilkTest-ом тип файлов скриптов. Размещение составляющих скрипта может быть произвольным, но лучше придерживаться определенных правил с целью выработки единого стиля программирования. Особенно это полезно тем, кто работает в коллективе из 2-х и более человек. Итак, файл скрипта содержит следующие компоненты ( в порядке следования сверху вниз):

  • Заголовок – это некоторый комментарий, содержащий информацию о содержимом данного файла. Его наличие необязательно, но это элемент хорошего тона в программировании
  • Подключение файлов – это набор use-директив, которые подключают необходимые для данного скрипта файлы ( как правило это фреймы ).
  • Блок декларации внешних переменных – это специально отведенное место, в котором объявляются переменные, константы, которые используются различными тесткейсами. Их желательно заносить под какой-нибудь заголовок, вида:
    Code

    // Global Variables
    	INTEGER iVar
    	... // Прочие объявления переменных
    

     

    Необходимость в таких блоках возникает достаточно часто, но вообще желательно держать как можно меньше глобальных переменных.

  • Блок объявления функций – оформляется аналогично блоку переменных. Использование функций при написании тесткейсов будет рассмотрено в пункте 2.4, поэтому не будем останавливаться на этом сейчас
  • Тесткейсы – непосредственно та часть, ради которой все остальные компоненты и добавляются. В этом блоке содержатся модули со сценариями автоматического тестирования. В следующем пункте о них будет рассказано подробнее. Каждый сценарий помещается в модули с ключевым словом testcase.
  • Функция main – необязательная часть, но если ее задействовать, то лучше именно здесь (просто выработаем такой стиль). Объяснять, что это за функция не будем, так как расчитано, что вы знакомы с такими языками программирования как С, С++ и прочие, у которых точка входа программы задается в специальном блоке. Данный блок обычно используется в отладочных целях или с целью подготовки среды к запуску скриптов ( особенно, для стресс-тестинга ).

И в завершение данного пункта приведем пример скрипта для автоматического тестирования:

Code


[ ] //*************************************************************************************************
[ ] //* File: AdminFocus0.t
[ ] //*
[ ] //* Description: 
[ ] //* Author:  
[ ] //* 
[ ] //* Global Variables: 
[ ] //* 
[+] //* Testcases:
	[ ] // testcase BusinessUnitTab () appstate none
[ ] //*************************************************************************************************
[ ]
[ ] use "TA_Frame.inc" 
[ ] 
[ ] // Static variables
	[ ] STRING sValue
	[ ] LIST OF STRING lsValue
	[ ] MAP mValue
[ ]
[ ] // Testcase-specific functions
	[+] VOID ClickOnTabWaitForm(WINDOW wTabButton , WINDOW wWin , STRING sTabName)
		[ ] wTabButton.DoClick()
		[+] if( !SynchronizeWindow( wWin ) )
			[ ] LogError("No ""{sTabName}"" tab available")
[ ] 
[ ] //*************************************************************************************************
[+] //* Testcase: BusinessUnitTab
	[ ] //* Description: 
	[ ] //* Creation date: 11/02/2006
	[ ] //* Author: 
	[ ] //*************************************************************************************************
[+] testcase BusinessUnitTab () appstate none
	[ ] 
	[ ] //*************************************************************************************************
	[ ] // Step 1:
	[ ] // Description: 
	[ ] //       Go to the ‘Business Unit’ tab.
	[ ] // Expected: 
	[ ] //       There is the ‘Business Unit’ form in the tab.
	[ ] //*************************************************************************************************
	[+]Print("Go to the ‘Business Unit’ tab.")
		[ ] Browser.SetActive()
		[ ] 
		[+] with wAdministration.wMainform.cwBusinessUnit
			[ ] ClickOnTabWaitForm(wAdministration.wMainmenu.btnBusinessUnit, .frmBusinessUnit , "Business Unit" )
		[ ] 
	[ ]Print("There is the ‘Business Unit’ form in the tab.")
[ ]
[+]main()
	[ ]BusinessUnitTab( )

 

Это фрагмент скриптового файла, использованного в реальном тестировании. Он сильно урезан, но этого примера достаточно для демонстрации структуры файла. Тут есть и заголовок, блоки подключения файлов, объявления переменных, функций, затем непосредственно тесткейс и в завершении функция main, хотя ничего плохого не случится, если последнего элемента не будет


Назад Содержание Дальше