0
排除套房

我webdriver.io測試跑步者被組織成套房了,我想,排除特定功能的套件。Webdriver.io測試運行 - 從特定的能力

例如,我有一套名爲suite1

// 
suites: { 
    suite1: [ 
    './test/spec/*.js', 
    ], 
}, 
// 

我想從Safari能力排除該套件:

// 
{ 
    'tunnelIdentifier' : sltunnel, 
    'browserName': 'safari', 
    'version': '10', 
    'platform': 'OS X 10.12', 
    'screenResolution': '1600x1200', 
    'exclude': [ 
     suite1, 
    ], 
}, 
// 

有沒有辦法來實現這一目標?

回答

0

當然也有多種方法可以做到這一點,但在這一天結束這一切都取決於你。

您可以將您的整套邏輯的wdio.conf.js文件之外到一個單獨的配置文件(我敢肯定,你可能已經有一個爲你的環境:測試督促,W/E),然後導入它(通過require到您wdio.conf.js文件):

因此,讓我們說你有suites.conf.js文件:

module.exports.suites = { 
    // 1 => run the suite 
    // 0 => don't run it 
    "chrome": { 
     "0": [ 
      "<yourSuiteName-001>.js" 
      "<yourSuiteName-003>.js" 
      "<yourSuiteName-005>.js" 
     ], 
     "1": [ 
      "<yourSuiteName-002>.js" 
      "<yourSuiteName-004>.js" 
     ] 
    }, 
    "safari" : { 
     "0": [ 
      "<yourSuiteName-002>.js" 
      "<yourSuiteName-004>.js" 
      "<yourSuiteName-005>.js" 
     ], 
     "1": [ 
      "<yourSuiteName-001>.js" 
      "<yourSuiteName-003>.js" 
     ] 
    } 
// <etc> 
} 

然後你把它導入到你的wdio.conf.js文件(var suites = require(./<pathToSuitesConfig>/suites.conf.js);),具有forEach通過所有的套房,並根據您的browserName週期,創建用於存儲可運行套房,它們符合你的條件的緩衝,然後將它們添加到配置文件。這個邏輯會在你的wdio.conf.js頭部分,您可以通過更新的結果導出config

我只是覺得這像5分鐘,所以我敢肯定有多種簡潔的方式來實現這一目標。


或者,你可以看看其他測試的車手,很容易插入WebdriverIO和已標註

  • 黃瓜有很大tagging機制(由於小黃瓜語法);
  • 摩卡有一些類似的叫,你猜對了tagging
相關問題