簡體   English   中英

Nunit Selenium並行測試值

[英]Nunit Selenium Parallel Tests with Values

我正在嘗試使用不同的值並行運行相同的nunit Test方法。 然而第二次測試似乎失敗了(我認為它試圖使用瀏覽器的第一個實例;

這是考驗;

 namespace AutomationProject.Login_Test_Cases
{
    [TestFixture]
    [Parallelizable(ParallelScope.Children)]
    class Login_Test_Cases: BaseTest
    {

        [Test]

        public void LoginPar([Values("skynet" ,"skynet2")] string username)
        {

            lg.Log_In(username, "password");
            }
        }
}

這是設置瀏覽器的baseTest;

namespace AutomationProject.BaseClasses
{
    public class BaseTest 

    {

        public Log_In_Methods lg;
        public IWebDriver driver;


       [SetUp]
        public void StartBrowser()
        {

            System.Diagnostics.Trace.AutoFlush = true;

            ChromeOptions options = new ChromeOptions();
            options.AddAdditionalCapability("useAutomationExtension", false);
            driver = new ChromeDriver(//path to chrome driver);

            lg = new Log_In_Methods(driver);

            driver.Manage().Window.Maximize();
            driver.Url = "http://login-test.com";


        }

我還將[assembly:Parallelizable(ParallelScope.Children)] [assembly:LevelOfParallelism(2)]添加到AssemblyInfo

第二次測試似乎總是失敗(瀏覽器甚至沒有獲取網址)

我可以並行運行不同的類和測試,沒有任何問題。

有誰知道是否可以與不同的值並行運行相同的測試方法?

有誰知道是否可以與不同的值並行運行相同的測試方法?

這絕對是可能的。 這里的問題是兩個測試在BaseTest類的單個實例上並行運行,因此您只有一個lg字段,兩個測試都試圖同時創建/使用。

能夠使用兩個單獨的BaseTest對象運行兩個單獨的測試是一個開放的功能請求,請參見此處: https//github.com/nunit/nunit/issues/2574

與此同時,如果您要在測試方法中包含[SetUp]邏輯並使用局部變量,那么您嘗試做的事情應該可行。

暫無
暫無

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

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