WEB开发网
开发学院软件开发C语言 网站测试自动化系统—在测试代码中硬编码测试数据... 阅读

网站测试自动化系统—在测试代码中硬编码测试数据

 2010-09-30 22:42:51 来源:WEB开发网   
核心提示: 下面是TestLibrary的完整源代码:publicclassTestLibrary{publicUserHelperUserHelper{get;privateset;}publicBlogHelperBlogHelper{get;privateset;}publicCommentHelpe

下面是TestLibrary的完整源代码:

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 ContributorUser = "Contributor1";
 
        public const string AuthorUser = "Author1";
 
        public const string ModeratorUser = "Moderator1";
 
        public const string EditorUser = "Editor1";
 
        public const string CommonPassword = "0123456";
 
        public const string AdminPassword = "0123456";
 
        public const string DefaultSeleniumHost = "localhost";
 
        public const int DefaultSeleniumPort = 4444;
 
        public const string DefaultBrowser = "*firefox";
 
        public const string DefaultSite = "http://localhost:30320";
    }
 
    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);
    }
 
    public static TestLibrary SetupTest(TestContext testContext)
    {
        if (testContext != null && testContext.DataRow != null && testContext.DataRow.Table.Columns.Contains("seleniumHost"))
        {
            return SetupTest(testContext.DataRow["seleniumHost"].ToString(),
                Int32.Parse(testContext.DataRow["seleniumPort"].ToString()),
                testContext.DataRow["browser"].ToString(),
                testContext.DataRow["site"].ToString());
        }
        else
        {
            return SetupTest(Consts.DefaultSeleniumHost, Consts.DefaultSeleniumPort,
                Consts.DefaultBrowser, Consts. DefaultSite);
        }
    }
 
    public static TestLibrary SetupTest(string seleniumHost, int seleniumPort,
        string browser, string site)
    {
        var selenium = new DefaultSelenium(
            seleniumHost, seleniumPort, browser, site);
        selenium.Start();
 
        return new TestLibrary(selenium) { SiteUrl = site };
    }
 
    public void Shutdown()
    {
        try
        {
            Selenium.Stop();
        }
        catch (Exception)
        {
            // Ignore errors if unable to close the browser
        }
    }
}

未完待续……

上一页  2 3 4 5 6 7 

Tags:网站 自动化

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接