{"title":"Model-Driven Testing Approach Based on UML Sequence Diagram","authors":"Jurijs Grigorjevs","doi":"10.2478/v10143-011-0025-2","DOIUrl":null,"url":null,"abstract":"Model-Driven Testing Approach Based on UML Sequence Diagram This paper is devoted to model-driven testing technique of testing model generation from UML sequence diagram to UML Testing profile. The article discusses principles of model transformation and shows practical approach to specific model generation from another one. The idea of such transformation is to generate test cases from sequence diagram of the system. Described transformation rules are focused on timing aspect verification and the goal of generated test cases is to cover successful as well as unsuccessful system behaviour. Presented example of model transformation is based on a sequence diagram XMI representation, which firstly is pre-processed and moved into data base structures, and then transformation rules applied to generate testing model from data describing sequence diagram. Modeļvadāmā testēšanas pieeja balstoties uz UML secību diagrammu Raksts ir veltīts modeļvadāmās testēšanas principiem. Autors piedāvā savu pieeju testēšanas gadījumu izstrādei. Modeļvadāmā programmatūras izstrāde paredz programmas koda iegūšanu no sistēmas modeļiem, lietojot transformācijas rīkus un definējot transformācijas likumus. Pašlaik arvien plašāk tiek attīstītas komerciālas un brīvi pieejamas programmatūras, kas nodrošina programmas koda automātisko generēšanu no sistēmas modeļiem. Raksta autors piedāvā savu metodi transformācijas principu pielietošanai ar mērķi automātiski generēt testēšanas gadījumus. Par pētījuma problēmu tika izvēlētas laicīguma īpašības, kas prasa specifiskus testēšanas gadījumus tās verificēšanai. Balstoties uz iepriekšējo pētījumu rezultātiem, par sākotnējo modeli sistēmas modelēšanai tika izvēlēta UML secību diagramma, kas nodrošina laicīguma aspektu definēšanu. UML testēšanas profils, ko piedāvā OMG, tiek lietots beigu modeļa atspoguļošanai, testēšanas gadījumu un ar to saistītu aspektu glabāšanai. Piedāvātā metode paredz secību diagrammas ielasīšanu XMI standarta formātā, ielasīto datu ielādi datu bāzes tabulās, kas atbilst secību diagrammas metamodelim un turpmāko modeļa transformāciju testēšanas modelī. Lai atvieglotu transformācijas likumu rakstīšanu, metode paredz sākotnēja modeļa vienkāršošanu un tā atspoguļošanu skata formā, kas iekapsulē svarīgākās objekta īpatnības. Pētījuma ietvaros ir izstrādāta transformācijas programma, kas ir spējīga lasīt transformācijas likumus un pielietot tās attiecībā pret sākotnēja modeļa datiem. Transformācijas rezultātā tiek aizpildītas datu bāzes tabulas, kas atbilst UML testēšanas profila metamodelim. Raksta beigās autors sniedz piedāvātās metodes aprobāciju ar vienkāršas secību diagrammas palīdzību ar diviem ziņojumiem ar laika ierobežojumiem. Aprobācijas laikā tiek definēti 3 transformācijas likumi, kas rezultātā iegūst 7 testēšanas gadījumus. Aprobācijas rezultāts ļauj secināt, ka piedāvātā metode ir spējīga darboties un generēt testēšanas gadījumus. Savukārt, izstrādātā rīka ierobežotā funkcionalitāte neļaus to lietot pilnvērtīgai testēšanai, bet izvēlētā struktūra atbalsta jaunu transformācijas objektu pielikšanu un transformācijas likumu papildināšanu. Pētījumā gaitā tika konstatēts, ka sākotnējā datu struktūra transformācijai ir pārāk sarežgīta transformācijas likumiem, tāpēc ir nepieciešama datu vienkāršotā reprezentācija. Pētījuma turpinājumā ir nepieciešams nodrošināt sarežgītāku gadījumu apstrādi, ka arī papildināt testējamo funkcionālo apgabalu. Метод тестирования, основанный на UML диаграмме последовательностей Статья посвящена процессу тестирования, основанному на моделях системы, где автор предлагает свой подход для генерации тестовых случаев. Разработка программного обеспечения, основанная на моделях системы, подразумевает использование моделей для автоматической генерации кода посредством использования программы трансформации и правил трансформаций. В данное время всё чаще встречаются коммерческие и свободно доступные программы для автоматической генерации программного кода из моделей системы. В статье автор предлагает свой метод использования аналогичных принципов генерации для формирования тестовых случаев, основываясь на модели системы. В качестве проблемы для данного исследования были выбраны временные ограничения функционирования программ, которые нуждаются в соответствующих тестовых случаях. Основываясь на результатах предыдущих исследований, за исходную модель была выбрана диаграмма последовательностей, которая также обеспечивает поддержку временных ограничений. Конечная модель для формирования тестовых данных основывается на UML профиле для тестирования. Предложенный метод подразумевает зачитывание диаграммы последовательностей в XMI формате, загрузку этих данных в таблицы базы данных, которая соответствует метамодели диаграммы последовательностей, и дальнейшую трансформацию в модель тестирования. Для облегчения написания правил трансформаций метод предусматривает упрощение и отображение изначальной модели в виде представления базы данных. В рамках данного исследования была разработана программа трансформации, позволяющая зачитывание правил трансформации и их дальнейшую обработку. В результате трансформаций заполняются таблицы базы данных, соответствующие формату метамодели UML диаграммы последовательности. В продолжение статьи автор приводит апробацию предложенного метода с помощью простой диаграммы последовательности, где имеются сообщения с временными ограничениями. Во время практической проверки метода предлагаются 3 правила трансформаций, что в результате приводит к генерации 7 тестовых случаев. Результат апробации даёт возможность сделать вывод о дееспособности данного метода и разработанных программ. В свою очередь, функциональные ограничения разработок не позволяют использовать их в полноценных тестах. Однако структура, выбранная при разработке программ, позволяет дополнять их функциональные возможности и развивать в дальнейших исследованиях. Во время данного исследования также было констатировано, что структура исходных данных модели сложна для прямого использования их в трансформации и есть необходимость в их упрощении, что и было сделано во время исследований. В продолжение исследования необходимо обеспечить поддержку более сложных диаграмм последовательностей и дополнить тестируемую область.","PeriodicalId":211660,"journal":{"name":"Sci. J. Riga Tech. Univ. Ser. Comput. Sci.","volume":"2009 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Sci. J. Riga Tech. Univ. Ser. Comput. Sci.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.2478/v10143-011-0025-2","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
Model-Driven Testing Approach Based on UML Sequence Diagram This paper is devoted to model-driven testing technique of testing model generation from UML sequence diagram to UML Testing profile. The article discusses principles of model transformation and shows practical approach to specific model generation from another one. The idea of such transformation is to generate test cases from sequence diagram of the system. Described transformation rules are focused on timing aspect verification and the goal of generated test cases is to cover successful as well as unsuccessful system behaviour. Presented example of model transformation is based on a sequence diagram XMI representation, which firstly is pre-processed and moved into data base structures, and then transformation rules applied to generate testing model from data describing sequence diagram. Modeļvadāmā testēšanas pieeja balstoties uz UML secību diagrammu Raksts ir veltīts modeļvadāmās testēšanas principiem. Autors piedāvā savu pieeju testēšanas gadījumu izstrādei. Modeļvadāmā programmatūras izstrāde paredz programmas koda iegūšanu no sistēmas modeļiem, lietojot transformācijas rīkus un definējot transformācijas likumus. Pašlaik arvien plašāk tiek attīstītas komerciālas un brīvi pieejamas programmatūras, kas nodrošina programmas koda automātisko generēšanu no sistēmas modeļiem. Raksta autors piedāvā savu metodi transformācijas principu pielietošanai ar mērķi automātiski generēt testēšanas gadījumus. Par pētījuma problēmu tika izvēlētas laicīguma īpašības, kas prasa specifiskus testēšanas gadījumus tās verificēšanai. Balstoties uz iepriekšējo pētījumu rezultātiem, par sākotnējo modeli sistēmas modelēšanai tika izvēlēta UML secību diagramma, kas nodrošina laicīguma aspektu definēšanu. UML testēšanas profils, ko piedāvā OMG, tiek lietots beigu modeļa atspoguļošanai, testēšanas gadījumu un ar to saistītu aspektu glabāšanai. Piedāvātā metode paredz secību diagrammas ielasīšanu XMI standarta formātā, ielasīto datu ielādi datu bāzes tabulās, kas atbilst secību diagrammas metamodelim un turpmāko modeļa transformāciju testēšanas modelī. Lai atvieglotu transformācijas likumu rakstīšanu, metode paredz sākotnēja modeļa vienkāršošanu un tā atspoguļošanu skata formā, kas iekapsulē svarīgākās objekta īpatnības. Pētījuma ietvaros ir izstrādāta transformācijas programma, kas ir spējīga lasīt transformācijas likumus un pielietot tās attiecībā pret sākotnēja modeļa datiem. Transformācijas rezultātā tiek aizpildītas datu bāzes tabulas, kas atbilst UML testēšanas profila metamodelim. Raksta beigās autors sniedz piedāvātās metodes aprobāciju ar vienkāršas secību diagrammas palīdzību ar diviem ziņojumiem ar laika ierobežojumiem. Aprobācijas laikā tiek definēti 3 transformācijas likumi, kas rezultātā iegūst 7 testēšanas gadījumus. Aprobācijas rezultāts ļauj secināt, ka piedāvātā metode ir spējīga darboties un generēt testēšanas gadījumus. Savukārt, izstrādātā rīka ierobežotā funkcionalitāte neļaus to lietot pilnvērtīgai testēšanai, bet izvēlētā struktūra atbalsta jaunu transformācijas objektu pielikšanu un transformācijas likumu papildināšanu. Pētījumā gaitā tika konstatēts, ka sākotnējā datu struktūra transformācijai ir pārāk sarežgīta transformācijas likumiem, tāpēc ir nepieciešama datu vienkāršotā reprezentācija. Pētījuma turpinājumā ir nepieciešams nodrošināt sarežgītāku gadījumu apstrādi, ka arī papildināt testējamo funkcionālo apgabalu. Метод тестирования, основанный на UML диаграмме последовательностей Статья посвящена процессу тестирования, основанному на моделях системы, где автор предлагает свой подход для генерации тестовых случаев. Разработка программного обеспечения, основанная на моделях системы, подразумевает использование моделей для автоматической генерации кода посредством использования программы трансформации и правил трансформаций. В данное время всё чаще встречаются коммерческие и свободно доступные программы для автоматической генерации программного кода из моделей системы. В статье автор предлагает свой метод использования аналогичных принципов генерации для формирования тестовых случаев, основываясь на модели системы. В качестве проблемы для данного исследования были выбраны временные ограничения функционирования программ, которые нуждаются в соответствующих тестовых случаях. Основываясь на результатах предыдущих исследований, за исходную модель была выбрана диаграмма последовательностей, которая также обеспечивает поддержку временных ограничений. Конечная модель для формирования тестовых данных основывается на UML профиле для тестирования. Предложенный метод подразумевает зачитывание диаграммы последовательностей в XMI формате, загрузку этих данных в таблицы базы данных, которая соответствует метамодели диаграммы последовательностей, и дальнейшую трансформацию в модель тестирования. Для облегчения написания правил трансформаций метод предусматривает упрощение и отображение изначальной модели в виде представления базы данных. В рамках данного исследования была разработана программа трансформации, позволяющая зачитывание правил трансформации и их дальнейшую обработку. В результате трансформаций заполняются таблицы базы данных, соответствующие формату метамодели UML диаграммы последовательности. В продолжение статьи автор приводит апробацию предложенного метода с помощью простой диаграммы последовательности, где имеются сообщения с временными ограничениями. Во время практической проверки метода предлагаются 3 правила трансформаций, что в результате приводит к генерации 7 тестовых случаев. Результат апробации даёт возможность сделать вывод о дееспособности данного метода и разработанных программ. В свою очередь, функциональные ограничения разработок не позволяют использовать их в полноценных тестах. Однако структура, выбранная при разработке программ, позволяет дополнять их функциональные возможности и развивать в дальнейших исследованиях. Во время данного исследования также было констатировано, что структура исходных данных модели сложна для прямого использования их в трансформации и есть необходимость в их упрощении, что и было сделано во время исследований. В продолжение исследования необходимо обеспечить поддержку более сложных диаграмм последовательностей и дополнить тестируемую область.