2017-06-14 76 views
2

我執行使用機器人框架測試用例集如下如何生成自定義日誌:使用rebot命令

pybot -o output1.xml -l log1.html -r report1.html testsuite.robot 

這將創建與報告一起輸出XML文件,並分別在我的日誌文件的目錄。

現在,考慮在上述套件中有10個測試用例,其中8個通過,2個失敗。我會用下面的命令重新運行這些測試用例:

pybot --rerunfailed -o output2.xml -l log2.html -r report2.html testsuite.robot 

我會得到兩個個XML,然後我想將它們合併,並獲得最終的XML文件作爲output1.xml與新的日誌一起和報告使用下面的命令文件:

rebot --merge output1.xml output2.xml 

我關心的是,在這裏我們得到log.htmlreport.html。但是,不用這些默認文件,我可以使用我提供的任何名稱來定製我的日誌嗎? 像下面

rebot --merge output1.xml output2.xml -l Final_Log.html -r Final_Report.html 

有人可以幫我,我怎麼能合併這兩個XML文件後獲得定製名稱日誌?

回答

4

我重新處理了這個問題。感謝Goralight爲我提供了定製xml,日誌和報告文件的想法。

讓我們開始。

pybot -o output1.xml -l log1.html -r report1.html testsuite.robot

pybot --rerunfailed -o output2.xml -l log2.html -r report2.html testsuite.robot 

在此之後我得到了合併這兩個XML文件。我需要分別使用新的xml文件,日誌文件和報告文件。所以,在Gorlight的結果和我的進一步研究的幫助下,我得到了以下解決方案,我相當確信。

rebot --merge --output Final_output.xml -l Final_log.html -r final_report.xml output1.xml output2.xml 

這給了我以下三個文件

Final_output.xml,Final_log.html和final_report.xml

在最後這正是我想要的。否我將這與我的Jenkins報告生成器集成並填充了最終的通過/失敗結果。

非常感謝Goralight的幫助。

4

你不需要--merge

如果您想要將兩個日誌連接在一起,請使用此命令。

rebot -N TwoCombinedTests --outputdir C:/Path/Where/You/Want/To/Save Test1.xml Test2.xml 

本文將結合對您2測試與個XML名稱Test1Test2。在通過--outputdir選項給出的路徑中,並且由於-N命令,最終名稱爲TwoCombinedTests

注意;當然,你將不得不在當前正在存儲這些xml文件的directoy中。如果使用終端,只需一個簡單的cd /path/to/xmls即可。

編輯 - 在我的情況下,當我運行我的測試(大約6個機器人文件)時,它會生成每個文件(報告,日誌輸出),每個文件都有自己的自定義名稱(測試名稱以及構建/衝刺號碼)。然後,我會將這些名字放入衝刺中並將它們全部合併。下面是我用你明白什麼rebot是爲(不超過以爲是什麼)腳本的例子

# command to combine all the reports into one large report. 
os.system('rebot -N AllCombinedTests-' + SprintSlash + '-' + Build + ' ' 
      '--outputdir C:/AutomationLogs/' + Product + '/Combined/' 
      + Version + Sprint + Build + " " + TotalXml) 

哪裏TotalXml是發現所有的個XML字符串列表。

EDIT2:

rebot --merge --name ExampleName original.xml merged.xml 

這rebot命令將結合兩個輸出個XML爲你(original.xml和merged.xml)的名稱EXAMPLENAME

在這裏,您將有一個大的「輸出XML 「然後你就可以只需再次運行rebot生成報告/日誌從中

rebot -N NameThatYouWant ExampleName.xml 

這將使用你剛纔的名稱而產生的XML‘NameThatYouWant’

如有任何問題,請詢問。

+0

謝謝@Goralight。所以,你的意思是說,-N命令將合併兩個XML文件,並給你帶有提到的名稱的新XML。但是,日誌文件呢?它會是log.html還是TowcombinedTests.html。請確認。 – CodeFlash

+0

「-N」命令將命名兩個組合的output.xml的子節點。所以你給它的XML測試1和測試2。它將通讀這些內容,並將它們合併到最終的報告/日誌文件中,如您在給出的目錄中的'TwoCombinedTests.html' – Goralight

+0

如果您想將兩個輸出結合到另一個xml文件中,那麼如果您想要爲其生成組合日誌。你最好只是跳過中間人,並從你想要的xml列表中生成一個組合的日誌/報告。儘管我現在會檢查你。 – Goralight