C# 用Moq模拟像seleniumwebdriver这样的复杂对象

C# 用Moq模拟像seleniumwebdriver这样的复杂对象,c#,moq,C#,Moq,我试图模仿selenium web驱动程序。我使用以下代码: public IWebDriver GetMockDriver() { this.Mock = new Mock<IWebDriver>(); return (IWebDriver)this.Mock.Object; } 我得到一个System.NullReferenceException 我真的不想/不需要跟踪对模拟对象的调用,更重要的是

我试图模仿selenium web驱动程序。我使用以下代码:

    public  IWebDriver GetMockDriver()
    {
        this.Mock = new Mock<IWebDriver>();
        return (IWebDriver)this.Mock.Object;            
    }
我得到一个System.NullReferenceException


我真的不想/不需要跟踪对模拟对象的调用,更重要的是,我想要实现iWebDriver的东西,这样我就可以使用TDD编写selenium测试,而不必每次都实际创建一个真正的web驱动程序实例。

如果要调用特定的成员,必须在模拟上定义一个实现

this.Mock.Setup(x => x.SomeMethod()).Returns(someObject);

试试上面的一些变化。否则,被模拟的方法将返回成员的default数据类型(可能为null)

干杯,你是说我还将模拟Manage方法/类以及我需要支持的属性吗?是的,默认模拟将为空,因此你必须为要调用的方法提供设置
this.Mock.Setup(x => x.SomeMethod()).Returns(someObject);