Robot Framework测试用例并行执行
生活随笔
收集整理的這篇文章主要介紹了
Robot Framework测试用例并行执行
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
背景
在實際的測試業務中,我們往往會遇到測試用例執行時間比較長,大量的測試用例串行執行的話,會使的整個測試周期變長,導致不能及時的反饋自動化測試的結果。因此我們會想出幾種解決方案,來并行的執行測試用例,加快自動化測試時間。做到能夠及時的反饋測試結果。
設計方案
方案一:
測試用例分布式執行,通過策略,將不同的測試用例,分發到不同的測試機上進行執行,然后收集測試結果,合并測試報告。
這里我們以web測試為例:
test-arch-robot.png通過Hub節點中心,將不同的測試請求分發到合適的測試節點中去,實現測試的分布式執行。
方案二:
在同一臺測試機上,啟動不同的進程,來分別執行不同的測試用例,根據測試機的CPU核數確定啟動的進程數,實現真正的并行執行。
這里我們主要用到了開源工具pabot來實現robot測試用例的并行執行。
robot_pabot.jpg樣例
執行下面這個簡單的用例,了解并行執行過程。
pip install -U robotframework-pabot==0.35 git clone https://github.com/wywincl/example-for-pabot.git cd example-for-robot && pabot --processes 5 topsuite輸出
ubuntu2@ubuntu2-PowerEdge-R410:~/tmp/example-for-pabot$ pabot --processes 5 topsuite 2017-01-05 15:48:13.683078 [PID:30072] [3] EXECUTING Topsuite.Testsuite2-測試2 2017-01-05 15:48:13.690442 [PID:30075] [4] EXECUTING Topsuite.Testsuite3 2017-01-05 15:48:13.689776 [PID:30073] [1] EXECUTING Topsuite.2Suite.Testsuite5-測試5 2017-01-05 15:48:13.696798 [PID:30079] [0] EXECUTING Topsuite.2Suite.Testsuite4 2017-01-05 15:48:13.978538 [PID:30077] [2] EXECUTING Topsuite.Testsuite1 2017-01-05 15:48:14.079019 [PID:30077] [2] PASSED Topsuite.Testsuite1 in 0.1 seconds 2017-01-05 15:48:14.089794 [PID:30072] [3] PASSED Topsuite.Testsuite2-測試2 in 0.4 seconds 2017-01-05 15:48:14.091765 [PID:30075] [4] PASSED Topsuite.Testsuite3 in 0.4 seconds 2017-01-05 15:48:14.094498 [PID:30073] [1] PASSED Topsuite.2Suite.Testsuite5-測試5 in 0.4 seconds 2017-01-05 15:48:14.098067 [PID:30079] [0] PASSED Topsuite.2Suite.Testsuite4 in 0.4 seconds Output: /home/ubuntu2/tmp/example-for-pabot/output.xml Log: /home/ubuntu2/tmp/example-for-pabot/log.html Report: /home/ubuntu2/tmp/example-for-pabot/report.html Elapsed time: 0 minutes 0.664 seconds小結
結合Jenkins+docker技術,我們可以很方便的基于上面的兩套方案,打造分布式并行自動化測試集群。
備注
Does not Support Other Unicode Character Like Chinese Character. 中文支持問題已經解決了。
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Robot Framework测试用例并行执行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2016/7/29作业
- 下一篇: RESTful API版本控制策略