簡體   English   中英

同時運行unittest測試用例和機器人框架測試用例

[英]Running unittest Test Cases and Robot Framework Test Cases Together

我們小組正在為我們的QA小組評估機器人測試框架,不僅僅針對BDD,還可能涵蓋我們的許多常規功能測試需求。 這當然是一個引人注目的項目。

基於xunit(unittest)架構的Robot Framework在多大程度上(如果有的話)? 我看到可以使用unittest斷言,但我沒有看到RF測試用例本身是基於unittest.TestCase。

理想情況下,我們的組織希望能夠編寫Robot Framework測試,以及Python unittest測試用例,從一個跑步者一起運行測試用例並獲得集成結果,重用RF的Selenium2 Library的“關鍵字”作為我們常規使用的函數unittest測試用例,以共享一個共同的SE代碼庫。

這是一個解決的問題嗎? 有人做過這種事嗎?

RobotFramework 不是單元測試的正確工具。

  • 單元測試應使用相同語言的單元(模塊,類等)編寫
  • 用自然語言描述場景的能力(這是RF等系統最強大的功能之一)在單元測試中毫無價值。 在這個級別的測試場景中輸入x得到輸出y

RF最適合驗收測試和集成測試,這是您系統的一流驗證。

不過,您可以將RF和xunit集成到QA系統中。 並合並來自RF和單元測試的報告。

雖然代碼單元測試和功能/非功能測試的目標是分開的,但python unittest模塊可以作為QA測試和單元測試的框架。 機器人框架是從頭開始設計的,用於QA測試,鈎子連接到Python / Java等語言。

Robot框架適用於具有漂亮HTML輸出的表格測試用例。 雖然unittest與其名稱所暗示的相當不錯,但它也可以很好地適用於非單元測試,其中asserts直接調用功能測試代碼。 還有用於unittest輸出的插件,例如HTMLTestRunner ,它具有類似於Robot的html輸出的“漂亮”特性。

我們在工作中對QA測試大量使用Robot框架,我們決定將所有測試用例切換到unittest模塊。 雖然我理解模塊不是一個功能測試平台的意圖,但機器人框架被證明是我們需要編寫和執行的測試用例的一個復雜層。 這導致更多的時間和精力將本機測試代碼掛鈎到Robot中,隨着測試套件的增長,調試越來越強硬。 使用unittest,我們在本機python中執行相同的測試(Robot的內置功能和插件對我們項目的復雜性來說過於誇張)。 我們現在在QA測試開發期間直接依賴python語言和完全IDE支持,然后使用任何CI工具/報告機制進行報告。

機器人根本不是基於xunit技術。 我個人認為它為python代碼提供了一個很好的單元測試框架,因為你可以創建可以直接導入模塊的關鍵字。 我將這種技術用於我工作的一些項目。

使用機器人,您可以標記單元測試或將它們全部放在單獨的層次結構中,以便您可以根據需要單獨執行驗收測試,或者將它們組合在一起並單獨分析統計信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM