[英]Selenium Grid in C# Parallel execution with Nunit
我刚刚为硒网格2进行了设置。集线器和节点已启动并正在运行。 我正在使用Selenium Webdriver + C#+ Nunit运行我的测试,我现在想执行以下操作:
1) 将测试用例分布在不同的节点之间(并行),例如运行测试x的节点1和运行测试y的节点2
2) 我需要能够为每个节点配置浏览器和平台类型,我现在要做的是我做了一个设置功能,并且它对所有节点使用相同的平台和浏览器,所以如何我通过分配每个节点的所需功能来实现。
问题是当我运行即将到来的代码时,我发现测试同时运行而不是并行运行。
我的代码快照:
using System;
using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Safari;
using OpenQA.Selenium.Edge;
using OpenQA.Selenium.IE;
using OpenQA.Selenium.Support.UI;
using OpenQA.Selenium.Remote;
using NUnit;
using NUnit.Framework;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace GridTest
{
[TestFixture]
[Parallelizable]
public class Test_Grid
{
IWebDriver driver;
[SetUp]
public void Setup()
{
/////IE Setup/////////
var capabilities = new DesiredCapabilities("internet explorer", string.Empty, new Platform(PlatformType.Any));
capabilities.SetCapability("ignoreProtectedModeSettings", true);
driver = new RemoteWebDriver(new Uri("http://localhost:4445/wd/hub"),capabilities);
}
//Search google test
[Test]
[Parallelizable]
public void GoogleSearch()
{
string homepage = "http://www.google.com";
//Navigate to the site
driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10));
driver.Navigate().GoToUrl(homepage);
}
[Test]
[Parallelizable]
public void BingSearch()
{
//var driver = new FirefoxDriver();
driver.Navigate().GoToUrl("http://www.bing.com");
}
[TearDown]
public void Teardown()
{
driver.Quit();
}
}
}
简单一个...但是您不会喜欢这个答案。 :-(
NUnit尚不支持在夹具中并行运行测试方法。 它仅并行运行单个灯具。
因此,您需要使用OneTimeSetUp选择正确的浏览器来对要在灯具级别并行运行的事物进行建模。
我没有使用c#或nunit,但是我有多个网格设置来分发java / testng测试。
我要做的是每节课做一个测试。 然后将它们编译为具有以下参数的xml测试套件:parallel =“ tests” thread-count =“ 14”
另外,请确保您的网格节点具有指定数量的实例。
NUnit支持方法级并行化。 您必须设置ParallelScope.All。
我已经开发了一个工作项目,该项目可以使用NUnit在不同的浏览器上并行运行(方法级别)。
如果您的项目有2个测试装置,每个文件中有15个测试,而您想并行运行所有30个测试。 然后使用以下命令:
nunit3-console.exe xxxtests.dll --workers = 30
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.