Opentest是用於Web應用程序,移動應用程序和API的免費開源功能測試自動化工具。
我們知道已經有很多東西已經建立了商業產品和開源項目。我們很長一段時間以來尋找合適的工具,並進行了公平的嘗試,並嘗試了很多工具,結果並不完全滿足我們的期望。我們正在尋找可以標準化的工具,這將使我們能夠統一多個內部和外部團隊的測試自動化工作,這些團隊具有各種規模,技能,預算和地理位置。該工具將必須納入行業中最新的最佳實踐,理想情況下,可以在開源許可下發布,以便我們消除冗長的流程並降低成本。考慮到這些考慮以及其他要求,我們認為從頭開始建造是負責任的選擇。
Opentest旨在在遵循一系列健康原則的同時提供現代測試自動化工具的所有功能。我們的目標是使功能測試自動化民主化,並創建一個有能力建立在自己的基礎上的偉大社區。雖然生活中沒有什麼是完美的,也沒有任何軟件完成,但我們保證,該產品進入該產品的每個功能都經過深思熟慮並仔細實施,以在一方面的功率和靈活性之間實現最佳平衡,而另一方面可用性。
網絡測試,硒。所有瀏覽器都支持。在本地計算機或使用雲提供商上運行測試。
具有Appium的Android和iOS應用程序的移動測試。在本地計算機或使用雲提供商上運行測試。
API測試,構建在Apache HTTPCLIENT庫的頂部。
關鍵字驅動的測試。使用高級構建塊組裝測試,從而隱藏了基礎技術的複雜性,並讓您以簡潔明了的方式表達自己。
腳本支持。使用JavaScript代碼覆蓋複雜的測試方案,並在關鍵字驅動的測試中有機地嵌入,以保持清潔和可讀性。
並行測試。您可以並行運行的測試會話數僅受您運行的機器的資源的限制(但云中總會有更多的機器)。
分佈式測試。編寫測試,這些測試在多個機器,網絡和技術中無縫執行。編寫跨越移動,Web,API以及兩者之間的任何內容的集成測試。
數據驅動的測試。在單獨的數據文件中維護的一組數據記錄上多次運行測試。
可擴展。通過創建自己的自定義測試操作(關鍵字)來與任何技術集成。
通過設計對源控制友好。自信地工作,知道Git有您的支持。非常適合大型或地理分佈的團隊。
環境。構建一次測試,並在多個環境中或使用不同的測試數據集。
與他人合作良好。使用簡單的HTTP API來控制啟動和監視測試會話,收集測試結果等。
跨平台,在MacOS,Windows和Linux上運行。
(我們不得不跳過很多非常酷的功能,以保持此簡短)
先決條件:node.js 8或更大; Java運行時8或更高。
從NPM安裝:
npm install opentest -g視頻教程:https://getopentest.org/docs/installation.html(在Windows上記錄)
在您的主目錄中創建一個名為“ Opent”的目錄,以用作本指南的操場,並將cd納入該目錄。
cd ~
mkdir opentest
cd opentest 筆記 | 在Windows上,使用md代替mkdir 。 |
在下面運行命令
opentest quick-start現在,您應該在當前路徑中有這些文件和目錄:
server
└── server.yaml
actor1
└── actor.yaml
test-repo
├── macros
│ └── ...
├── scripts
│ └── ...
├── templates
│ └── ...
└── tests
└── ... server和actor1目錄將分別用作最opent服務器和測試Actor的工作目錄。 test-repo目錄是一個樣本測試存儲庫,它演示了opentest的一些基本特徵。
打開一個新的終端窗口, cd到服務器的工作目錄,然後啟動最佳服務器:
cd ~/opentest/server
opentest serverOpentest服務器(又稱同步服務器)是一個Node.js應用程序,其主要功能是協調測試執行並提供基於Web的UI。
打開一個新的終端窗口, cd到演員的工作目錄並啟動測試參與者:
cd ~/opentest/actor1
opentest actor測試參與者是一個Java應用程序,可在測試的系統上運行,並按照同步服務器指示執行測試步驟。
打開Web瀏覽器並導航到http:// localhost:3000。
從菜單中,從模板中選擇“會話”>“創建會話” 。選擇模板快速啟動測試,然後單擊創建會話。等待幾秒鐘,然後刷新您的瀏覽器以查看測試會話的結果。
最opent的組件有三個組件:
同步服務器,一個主要執行三個函數的node.js應用程序:
策劃測試執行。
揭示可用於創建測試會話,檢查測試結果等的Web UI。
揭示一個友好的API,可以將其用於與UI大致相同的目的。
按照同步服務器的指示,測試演員是負責執行測試的Java應用程序。可以有多個參與同一測試的參與者,並且參與者可以在任何網絡中的任何機器上部署,包括雲中的任何機器。唯一的要求是,測試參與者可以與Sync Server公開的HTTP API通信。不需要同步服務器可以啟動與演員的通信,這在場景中大大簡化了Actor在防火牆後面或網絡中無法從運行Sync Server無法訪問的網絡中運行的場景中的設置。
測試存儲庫,一個帶有預定義的,所需結構的目錄,在源控制下,包含各種測試資產(測試文件,腳本,測試會話模板等)。

Opent是根據MIT許可發布的開源軟件。
除非您另有明確說明,否則您故意提交的任何捐款供本存儲庫中納入本存儲庫,均應在上述許可中,而無需任何其他條款或條件。
有關更多信息,請參閱貢獻指南文件。
感謝Browserstack為測試和開發提供了開源帳戶!
Sauce Labs提供的跨瀏覽器測試平台和開源❤️