2017-01-26 27 views
2

在我的量角器conf.js文件中,我想多次重複使用相同的spec文件;但是,這似乎是不可能的。量角器 - 如何重複使用相同的spec文件進行不同的測試

一些背景資料:

我們正在從一個JSON文件中讀取測試的情況下,推出報告,然後測試結果網和各種DOM元素。

所有報告具有相同的格式。主要區別在於報告標題,數據列,實際數據結果等。

所以在我的conf.js文件中,理想情況下我想多次重複使用相同的spec文件 - 但我的理解是我不能這樣做。

例如,我的規格陣列:

specs: [ 
     'spec/report1-spec.js', 
     'spec/report-grid-details-spec.js', 
     'spec/report2-spec.js', 
     'spec/report-grid-details-spec.js', 
     'spec/report3-spec.js', 
     'spec/report-grid-details-spec.js', 
] 

我讀過這篇文章(http://ramt.in/how-to-run-identical-jasmine-specs-multiple-times-with-protractor/),您可以將您的規範文件到node module,但1)我不想將所有規範文件在那裏,並且2)當我將一個spec文件移動到模塊導出文件中時,它不起作用。

如果我不能這樣做,那麼我只需將我的report-grid-details-spec.js代碼合併到一個常見的page object文件中,並在需要時調用它。

只是想知道是否有人找到了解決方案,以便在一個conf.js配置中多次重複使用spec文件。

謝謝 鮑勃

回答

2

如果我不能做到這一點,然後我就動了我的報告併網的細節,spec.js代碼到一個共同的網頁對象文件並調用它,只要這是必要的。

這可能是解決問題的最簡單方法。儘管如此,我喜歡將規範放入模塊的想法 - 這對整體的可重用性來說是一個加號。

事情是,jasmine不允許在單次測試運行中執行相同的測試。而且,從我的理解中,沒有簡單的方法來改變行爲。

一個可能的解決方法是完全重啓量角器,因此,重建茉莉測試環境,以便在未來report-grid-details-spec.js將在新茉莉環境中運行 - 這一點是protractor-flake project用來重試失敗的測試(它基本上通過命令行重新啓動protractor,將故障規格作爲以逗號分隔的列表傳遞到specs參數source)。

+1

是啊..茉莉默認不支持..我在'TaskScheduler.js'中檢查過.. +1 – AdityaReddy

+1

@alecxe - 謝謝。我正在考慮使用'suites'屬性創建套件,但每次都會覆蓋我的e2e測試報告。 –

相關問題