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