从上面的代码中,你可以观察到,Post的属性,除了Settings属性以外,其他的属性都是从网页上直接读取的—当然是假设当前网页正在显示对应的文章。因此,要将基准数据库集成到自动化测试代码中来,只要实例化一个PostSettings变量好了。TestLibrary是 负责连接到Selenium-RC,并保存对应连接的类。下面的代码演示了这个思想:

 

public class TestLibrary


{

    public UserHelper UserHelper { get; private set; }

 

 

    public BlogHelper BlogHelper { get; private set; }


 

 

    public CommentHelper CommentHelper { get; private set; }

 

 

    public Blog DefaultBlog { get; private set; }

 

    public Post DefaultPost { get; private set; }

 


    public ISelenium Selenium { get; private set; }

 


    public string SiteUrl { get; private set; }

 

    public class Consts

    {

        public const string TimeToWaitForPageToLoad = "30000";


 


        public const string AdminUserName = "administrator";      

 

 

        public const string AdminPassword = "0123456";

    }

 

    public TestLibrary(ISelenium selenium)

 

    {


        this.UserHelper = new UserHelper(this);


        this.BlogHelper = new BlogHelper(this);

 

        this.CommentHelper = new CommentHelper(this);

        Selenium = selenium;

 

 

        InitialDefaultSiteDate();

    }

 

 

    private void InitialDefaultSiteDate()

 

    {

        DefaultBlog = new Blog(this, "Default Test Blog", "default-test-blog", "Default Test Blog", Consts.AdminUserName);

 

        DefaultPost = new Post(this, new PostSettings()

 

        {

            Title = "Default Test Post",


            Permalink = "default-test-post",

 

            Body = "This is for web site testing purpose.",


            Tags = "Test",

 

            PublishSetting = PostSettings.PublishSettings.PublishNow


        },

        DefaultBlog);

 

    }

}