vs硒 - 系统.argumentNullexception:文本不能是null参数名称:文本



我正在编写(硒(单元测试,并且正在遇到无效问题。此代码以前正在运行和工作,但是现在正在失败,而不是将值输入所需字段。谁能给我一些有关可能出错的建议?

单元测试目标:导航Web服务UI并输入应显示结果的值。

dmpage.cs

using System;
using OpenQA.Selenium;
namespace Framework.WebServicePages
{
    public class DMPage
    { 
        public static void GoTo()
        {
            WebServiceDriver.Instance.Navigate().GoToUrl("URL");
        }
        public static void Wait()
        {
            WebServiceDriver.Instance.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(20);
        }
        public static string IsAt
        {
            get
            {
                var title = WebServiceDriver.Instance.FindElement(By.XPath(""));
                if (title != null)
                    return title.GetAttribute("Title");
                return string.Empty;
            }
        }
        public static ValueCommand EnterValue(string valuenum)
        {
            return new ValueCommand();
        }
    }
    public class ValueCommand
    {
        private readonly string valuenum;
        public ValueCommand()
        {
            this.valuenum = valuenum;
        }
        public void SearchValue()
        {
            var inputValue = WebServiceDriver.Instance.FindElement(By.XPath(""));
            inputValue.SendKeys(valuenum);
            var submitValue = WebServiceDriver.Instance.FindElement(By.XPath(""));
            submitValue.Click();
        }
    }
}

dmtests.cs

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using ValueMedAutomation.WebServicePages;
namespace Tests.WebServiceTestScripts
{
    [TestClass]
    public class DMTests
    {
        [TestInitialize]
        public void Init()
        {
            WebServiceDriver.Initialize();
        }
        [TestMethod]
        public void DM_Meds()
        {
            DMPage.GoTo();
            DMPage.Wait();
            DMPage.EnterValue("123456789").SearchValue();
            DMPage.Wait();
            Assert.AreEqual(DMPage.IsAt, "TEST", "Value failed.");
        }
        [TestCleanup]
        public void Cleanup()
        {
            WebServiceDriver.Close();
        }
    }
}

运行单元测试后的错误

  1. 消息:测试方法tests.webserviceTestscripts.dmtests.dm_med投掷例外:
    System.ArgumentNullexception:文本不能为空参数名称:文字
  2. stacktrace:
    remotewebelement.sendkeys(字符串文本(
    valueCommand.SearchValue((
    dmtests.dm_med((
  3. CS1717分配给同一变量;你是说要分配其他东西吗?

调试时错误

运行调试时以下几行断开:

L41    this.valuenum = valuenum;
L47    inputValue.SendKeys(valuenum);

您忘了在ValueCommand类的构造函数中传递string valuenum


DMPage类中:

public static ValueCommand EnterValue(string valuenum)
{
    return new ValueCommand(valuenum);
}

ValueCommand类中:

public ValueCommand(string valuenum)
{
    this.valuenum = valuenum;
}

相关内容

  • 没有找到相关文章