我正在尝试让PNunit进行某些Sauce Labs测试。但是,当我尝试使用PNUnit Launcher.exe启动它时,出现以下错误消息:

“在程序集PNUnit.Test.dll中找不到测试PNUnit_Test.SauceTest.TestCase”。

这是我的示例测试代码:

using NUnit.Framework;
using PNUnit.Framework;
using System;
using System.Web;
using System.Text;
using System.Net;
using OpenQA.Selenium;
using OpenQA.Selenium.Remote;
using OpenQA.Selenium.Support.UI;

namespace PNUnit_Test
{
  [TestFixture()]
  public class SauceTest
  {
    private IWebDriver driver;
    private string[] testParams;

    [SetUp]
    public void Init()
    {
        testParams = PNUnitServices.Get().GetTestParams();
        String params1 = String.Join(",", testParams);
        Console.WriteLine(params1);
        String browser = testParams[0];
        String version = testParams[1];
        String os = testParams[2];
        String os_version = testParams[3];
        DesiredCapabilities capabilities =  new DesiredCapabilities();
        capabilities.SetCapability("browserName", browser);
        capabilities.SetCapability(CapabilityType.Version, version);
        capabilities.SetCapability("os", os);
        capabilities.SetCapability("os_version", os_version);
        capabilities.SetCapability("username", Constants.SAUCE_LABS_ACCOUNT_NAME);
        capabilities.SetCapability("accessKey", Constants.SAUCE_LABS_ACCOUNT_KEY);

        Console.WriteLine("Capabilities" + capabilities.ToString());

        driver = new RemoteWebDriver(new Uri("http://ondemand.saucelabs.com:80/wd/hub"), capabilities);
    }


    [Test]
    public void TestCase()
    {
        driver.Navigate().GoToUrl("http://www.google.com");
        StringAssert.Contains("Google", driver.Title);
        IWebElement query = driver.FindElement(By.Name("q"));
        query.SendKeys("Sauce Labs");
        query.Submit();
    }

    [TearDown]
    public void Cleanup()
    {
        driver.Quit();
    }
 }
}


这是我用来设置浏览器以用于测试的conf文件:

<TestGroup>
  <ParallelTests>
    <ParallelTest>
      <Name>Testing</Name>
       <Tests>
        <TestConf>
          <Name>TestFF-40-Win8</Name>
          <Assembly>PNUnit_Test.dll</Assembly>
          <TestToRun>PNUnit_Test.SauceTest.TestCase</TestToRun>
          <Machine>localhost:8081</Machine>
         <TestParams>
            <string>firefox</string> <!--browserName -->
            <string>40.0</string> <!-- version -->
            <string>Windows</string><!-- os -->
            <string>8</string><!-- os_version -->
        </TestParams>
      </TestConf>
      <TestConf>
        <Name>TestFF-21-win7</Name>
        <Assembly>PNUnit_Test.dll</Assembly>
        <TestToRun>PNUnit_Test.SauceTest.TestCase</TestToRun>
        <Machine>localhost:8081</Machine>
        <TestParams>
            <string>firefox</string> <!--browserName -->
            <string>21.0</string> <!-- version -->
            <string>Windows</string><!-- os -->
            <string>7</string><!-- os_version -->
        </TestParams>
      </TestConf>
     </Tests>
   </ParallelTest>
 </ParallelTests>
</TestGroup>


不确定我可能做错了什么,并且很少找到有关使用PNUnit进行C#硒测试的信息,因此将不胜感激。谢谢!

最佳答案

弄清楚了。我的C#项目是使用.NET 4框架构建的。 PNUnit仅适用于.NET 3.5。就个人而言,很高兴NUnit 3能够运行基于Net40和更高版本的并行项目

09-25 22:13