C# 有人能帮忙吗;名称';posttype';“在当前上下文中不存在”;错误

C# 有人能帮忙吗;名称';posttype';“在当前上下文中不存在”;错误,c#,selenium,selenium-webdriver,C#,Selenium,Selenium Webdriver,……因此,我创建了以下类,作为我的自动测试包的一部分,但我在“ListPostsPage.GoTo(PostType.Page)”代码行中遇到一个错误,提示:“名称PostType在当前上下文中不存在”。此类的代码如下所示: using Microsoft.VisualStudio.TestTools.UnitTesting; using System; using System.Collections.Generic; using System.Linq; using System.Text;

……因此,我创建了以下类,作为我的自动测试包的一部分,但我在“ListPostsPage.GoTo(PostType.Page)”代码行中遇到一个错误,提示:“名称PostType在当前上下文中不存在”。此类的代码如下所示:

using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WordpressTests
{
    [TestClass]
    public class PageTests
{
    [TestInitialize]
    public void Init()
    {
        Driver.Initialise();
    }

    [TestMethod]
    public void CanEditAPage()
    {
        LoginPage.GoTo();
        LoginPage.LoginAs("XXXXXX").WithPassword("XXXXXX").Login();

        **ListPostsPage.GoTo(PostType.Page);**
        ListPostsPage.SelectPost("Sample Page");

        Assert.IsTrue(NewPostPage.IsInEditMode(), "Wasn't in edit mode");
        Assert.AreEqual("Sample Page", NewPostPage.Title, "Title did not match");
    }

    [TestCleanup]
    public void Cleanup()
    {
        Driver.Close();
    }
   }
}
仅供参考,ListPostsPage类的代码如下:

using OpenQA.Selenium;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WordpressTests
{
    public class ListPostsPage
{
    public static void GoTo(PostType postType)
    {
        switch (postType)
        {
            case PostType.Page:
                Driver.Instance.FindElement(By.Id("menu-pages")).Click();
                Driver.Instance.FindElement(By.LinkText("All Pages")).Click();
                break;
        }
    }

    public static void SelectPost(string title)
    {
        var postLink = Driver.Instance.FindElement(By.LinkText("Sample Page"));
        postLink.Click();
    }

    public enum PostType
    {
        Page
    }

  }
}
有没有人对这个问题有什么想法?请记住,我对这一点还不太熟悉,所以请友好一点!:-)

任何帮助都将不胜感激

干杯


Andy

PostType
ListPostsPage
的枚举成员,但您试图像访问静态类一样访问它

您应该这样做:

ListPostsPage.GoTo(ListPostsPage.PostType.Page);

作为一点,我想指出,使用Selenium实现页面对象模型将使您受益匪浅。在您的代码中,一切都是静态的!