[發明專利]使用神經語言編程和機器學習機制基于行為驅動開發步驟定義和相似性分析從行為驅動開發場景生成測試模型在審
| 申請號: | 201980091329.4 | 申請日: | 2019-11-28 |
| 公開(公告)號: | CN113366453A | 公開(公告)日: | 2021-09-07 |
| 發明(設計)人: | S·斯托克 | 申請(專利權)人: | 西門子股份公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 中國專利代理(香港)有限公司 72001 | 代理人: | 劉書航;陳嵐 |
| 地址: | 德國*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 使用 神經 語言 編程 機器 學習 機制 基于 行為 驅動 開發 步驟 定義 相似性 分析 場景 | ||
使用神經語言編程和機器學習機制,基于行為驅動開發步驟定義和相似性分析,從行為驅動開發場景生成測試模型。本發明涉及一種用于在行為驅動開發(BDD)環境中自動驗證軟件程序的方法以及被配置為執行這樣的方法的數據處理系統。首先匹配BDD測試場景的單獨的測試步驟,然后將其分派給來自BDD框架的現有測試步驟定義。如果一對一的匹配是不可能的,則自然語言處理(NLP)被用來決定所述分派是否可能具有一定的匹配概率。所分派的測試步驟定義用于為測試場景生成圖形測試模型,例如UML圖。最后,生成可執行的測試腳本來測試軟件程序。本發明特別是涉及行為驅動開發(BDD),并且將傳統的BDD優點與基于模型的測試(MBT)相組合,以用于在復雜軟件包的情況下的改進的便利性和自動化。自動化的步驟匹配允許BDD步驟短語到測試自動化框架的有效映射,并支持必要框架代碼的結構化開發。圖形測試模型增加了附加的抽象層,并提供了檢查BDD場景的一致性和完整性的機會。
技術領域
本發明涉及一種用于在行為驅動開發環境中自動驗證軟件程序的計算機實現的方法。本發明進一步涉及包括被配置為執行這樣的方法的處理器的設備。本發明特別是涉及行為驅動開發(BDD)。
背景技術
近年來,BDD已經成為一種敏捷軟件開發方法,用于規范和執行軟件程序的自動化驗收測試。BDD由Dan North于2006年引入,以簡化測試驅動開發(TDD),例如參見Brandel等的“Drei Methoden, ein Ziel: Testautomatisierung mit BDD,MBT und KDT imVergleich”,Softwaretechnik-Trends,35(3),2015。TDD是一種軟件開發方法,它本質上規定對于軟件的每個單元,軟件開發人員必須首先為該單元定義特定的測試集,然后實現該單元,并且最后驗證該單元的實現使測試成功。BDD組合了測試驅動開發(TDD)、面向對象分析(OOA)、面向對象設計(OOD)和領域驅動設計(DDD),以提供一種統一的語言和方法用于處置從需求分析到實現的這樣的軟件開發過程。
BDD很大程度上是通過使用簡單的領域特定語言(DSL)來促進的,該語言使用能夠表達軟件的行為和預期結果的自然語言結構(例如,類似英語的句子)。這種“通用語言”可以被質量經理、領域專家、軟件開發人員和客戶理解并共同使用。BDD采用半正式格式用于軟件的行為規范,這是從面向對象分析和設計領域的用戶故事規范中借用來的。
為此,每個軟件單元被分解成所謂的場景,每個場景測試軟件的一個單獨方面。每個場景進而被劃分成測試步驟,所述測試步驟描述了從給定的初始條件開始并且運行通過預定義事件的軟件的相應方面的期望結果。每個場景及其測試步驟都被制定為自然語言腳本,隨后可以以自動化方式將其轉換為可執行的測試腳本。然后,可執行的測試腳本可以作為自動化測試來執行,以用于測試軟件的正確實現。測試腳本內的軟件需求通常以基于領域驅動的設計的通用語言的“given-when-then”語句來編寫。這旨在促進用于定義領域驅動需求的語言和用于實現它們的編程語言之間的轉換。
一種廣泛用于以BDD風格編寫的自動化驗收測試的測試自動化框架被稱為Cucumber,它包括一個被稱為Gherkin的簡明語言解析器。軟件的期望行為在Gherkin中以聲明的方式制定:
-GIVEN (前提條件/初始條件) ……
-WHEN (事件/動作/觸發器) ……
-THEN (要觀察的效果/系統響應)…… 。
這樣的描述性語言是半正式的,其中大寫單詞(GIVEN,WHEN,THEN)充當預先指定的關鍵詞。由于簡單的語法和自然語言關鍵詞,技術測試人員可以理解和手動執行BDD需求。Cucumber運行通過這些關鍵詞,并逐個步驟對它們進行處理,從而將這些關鍵詞后面的每個非大寫短語映射到參數化的函數調用。傳統上,Ruby腳本在Cucumber中用于此目的,它通過自動化程序調用來替換測試步驟,并且從而使BDD描述是自動地可執行的。然而,Cucumber現在通過各種實現支持各種不同的編程語言,包括Java和C#。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西門子股份公司,未經西門子股份公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201980091329.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:玻璃陶瓷制品
- 下一篇:裝飾用層合構件和裝飾性成型品的制造方法





