簡體   English   中英

無法並行運行測試(Selenium grid + NUnit)

[英]Cannot run tests in parallel (Selenium grid + NUnit)

我將 NUnit 3.5 與具有兩個節點的硒網格(selenium-server-standalone-2.53.0.jar)結合使用(一個節點與集線器在同一台機器上)。

在網格上按順序執行測試效果很好。 同時執行多個順序測試套件(即執行兩個單獨的測試項目,集線器將測試分別分配到一個集線器)也能很好地工作。

我無法開始工作的是並行運行同一項目中的多個測試類。 我想要做的是並行執行一些測試類(包含多個測試)。 基本上,我的兩個(或更多)測試類如下所示:

[Parallelizable(ParallelScope.Fixtures)]
public class Search {

    [Test]
    public void TestSomething() {
        //Test here
    }

    [Test]
    public void TestSomethingElse() {
        //Test something else here
    }

我得到了非常奇怪的結果,而不是並行執行的測試。 盡管它們似乎並行執行,但測試/會話似乎混淆了。 例如,一個測試的日志輸出 (Console.WriteLine) 將顯示在另一個測試的輸出中。 因此,通過的測試可能會有日志輸出說它失敗了(因為我們在失敗的測試上輸出了一些日志)。

集線器配置:與默認相同,但使用端口 8887

節點配置:

{
  "capabilities": [
    {
      "browserName": "firefox",
      "maxInstances": 5,
      "cleanSession": true 
    },
    {
      "browserName": "chrome",
      "maxInstances": 5
    },
    {
      "browserName": "internet explorer",
      "maxInstances": 1
    }
  ],
  "configuration": {
    "_comment" : "Configuration for Node",
    "cleanUpCycle": 2000,
    "timeout": 10000,
    "port": 5555,
    "host": "sto-selenium02",
    "register": true,
    "hubPort": 8887,
    "maxSessions": 3
  }
}

我在這里缺少什么? 會話/測試如何混淆,或者這里是否有其他東西在起作用? 所有幫助表示贊賞!

我遇到了同樣的問題,結果發現 WebDriver 實例被編碼為靜態變量。 當它被刪除時,測試可以並行運行。

希望有幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM