12.07.2015 Views

СОФИЙСКИ УНИВЕРСИТЕТ “СВ. КЛИМЕНТ ОХРИДСКИ”

СОФИЙСКИ УНИВЕРСИТЕТ “СВ. КЛИМЕНТ ОХРИДСКИ”

СОФИЙСКИ УНИВЕРСИТЕТ “СВ. КЛИМЕНТ ОХРИДСКИ”

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Част 5: Реализация на инструмента заавтоматизирано създаване на тестовеПространство от имена ParsersВ пространството от имена Parsers са дефинирани класовете, които обработваттестовите таблици и създават съответната йерархия от елементи. Структурата накласовете от това пространство от имена е представена на Фигура 6.Parser+Entities()+Parser()+Parse(in file : string)+Parse(in entity)+Parse()#GetCommonEntities()#GetRequirements()#GetVariables()#GetApplicationMap()+AddTestTable(in testTable : TestTable, in addNode : string)+UpdateRequirements(in testTable : TestTable, in requirements : Requirements)+UpdateVariable(in testTable : TestTable, in variable : Variable)+AddVariable(in testTable : TestTable, in variable : Variable, in contextTable : string)+DeleteRow(in testTable : TestTable, in deleteTable : string, in index : int)#IsLineTestStep(in line : string) : bool#IsLineCommand(in line : string) : bool#IsSkipLine(in line : string) : bool#IsLineComment(in line : string) : bool#IsLineScript(in line : string) : bool«call»TestTableTemplates+CommentChars() : char[]+PrerequisitesSectionStart() : string+PrerequisitesHeader() : string+StepHeader() : string+SuiteHeader() : string+CycleHeader() : string+StepHeaderRows() : int+SuiteHeaderRows() : int+CycleHeaderRows() : int+TestStepRecordTypeChar() : char+CommandRecordTypeChar() : char+SkipLineRecordTypeChar() : char+SeparatorChar() : char+VariableStartChar() : char+TestTableTemplates()SuiteTableParser+SuiteTableParser()#GetStepTables()CycleTableParser+CycleTableParser()#GetSuiteTables()Parsers::StepTableParser+StepTableParser()Фигура 6. Диаграма на класовете в пространството от имена ParsersКласът StepTableParser обработва стъпковите таблици, класът SuiteTableParserобработва таблиците, представящи сюити, а класът CycleTableParser обработватаблици, описващи тестови цикли. В абстрактния клас Parser са описани и операции,които са общи за всички типове таблици.В класа TestTableTemplates са описани основните елементи на тестовитетаблици като заглавните части на секциите в таблиците, символите за разделител, типна запис и др.Инструментът предоставя и няколко функции за осъществяване на интеграциятас тестовата платформа RRAFS - Export Test For Execution и Import Log Files. Export TestFor Execution е функция за прехвърляне на създадените тестови файлове в работнатадиректория на тестовата платформа RRAFS. Когато йерархията от тестове бъдезавършена автоматично генерираните тестови таблици могат да бъдат прехвърлени заизпълнение в определените директории на платформата. Import Log Files копирасъздадените в резултат на изпълнението на тестовете лог файлове в директорията натекущата версия. Лог файловете могат да бъдат разглеждани в редактора наинструмента.48

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!