在测试代码中硬编码测试数据(4)

发表于:2012-09-11来源:不祥作者:知平软件点击数: 标签:自动化测试
从上面的代码中,你可以观察到,Post的属性,除了Settings属性以外,其他的属性都是从网页上直接读取的当然是假设当前网页正在显示对应的文章。因此,

  从上面的代码中,你可以观察到,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);

    }

}

原文转自:http://www.ltesting.net