Пример #1
0
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime = 100;
            Keyboard.DefaultKeyPressTime = 40;
            Delay.SpeedFactor = 1.0;

            const string homePageURI = "integration.lynda.com/member.aspx";

            Browser browserIE = new Browser(BrowserProduct.IE,homePageURI,true);
            browserIE.HalfSize();
            Browser browserFF = new Browser(BrowserProduct.Firefox,homePageURI,true);
            browserFF.HalfSize();
            browserFF.Move(200,200);

            //Create new member home page instance which also waits for the page to load
            HomePageMember homePageMemberIE = new HomePageMember(browserIE);
            HomePageMember homePageMemberFF = new HomePageMember(browserFF);

            homePageMemberIE.ClickSubscribeLink();
            homePageMemberFF.ClickSubscribeLink();

            RegPageStep1 regPageStep1IE = new RegPageStep1(browserIE);
            RegPageStep1 regPageStep1FF = new RegPageStep1(browserFF);

            regPageStep1IE.SelectOTLSubscription(OTLSubscriptionPlanRegPage1.SubscriptionPlan.MonthlyPremium);
            regPageStep1FF.SelectOTLSubscription(OTLSubscriptionPlanRegPage1.SubscriptionPlan.Annual);

            regPageStep1IE.FillAccountInfo(new AccountInfo(AccountInfo.DefaultInfo.Standard));
            AccountInfo accountInfo = new AccountInfo(AccountInfo.DefaultInfo.Standard);
            accountInfo.FirstName="John";
            regPageStep1FF.FillAccountInfo(accountInfo);

            regPageStep1IE.ClickContinue();
            regPageStep1FF.ClickContinue();

            RegPageStep2 regPageStep2IE = new RegPageStep2(browserIE,BillingInformation.DefaultInfo.Standard,
                                                           PaymentInformation.DefaultInfo.Standard);
            RegPageStep2 regPageStep2FF = new RegPageStep2(browserFF,BillingInformation.DefaultInfo.Standard,
                                                           PaymentInformation.DefaultInfo.Standard);

            regPageStep2IE.ClickIHaveRead();
            regPageStep2IE.ClickStartMembership();
            regPageStep2FF.ClickIHaveRead();
            regPageStep2FF.ClickStartMembership();
        }
Пример #2
0
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            const string testCaseName = "AllRegistrations";
            string subscriptionPlanRow = TestSuite.Current.GetTestCase(testCaseName).DataContext.CurrentRow["SubscriptionPlan"];
            string regPage2PlanNameExpected = TestSuite.Current.GetTestCase(testCaseName).DataContext.CurrentRow["regPage2PlanNameExpected"];
            string confirmPagePlanNameExpected = TestSuite.Current.GetTestCase(testCaseName).DataContext.CurrentRow["confirmPagePlanNameExpected"];

            OTLSubscriptionPlanRegPage1.SubscriptionPlan subscriptionPlanToSelect = (OTLSubscriptionPlanRegPage1.SubscriptionPlan)
                Enum.Parse(typeof(OTLSubscriptionPlanRegPage1.SubscriptionPlan),subscriptionPlanRow,false);

            Mouse.DefaultMoveTime = AppSettings.MouseDefaultMoveTime;
            Keyboard.DefaultKeyPressTime = AppSettings.KeyboardDefaultKeyPressTime;
            Delay.SpeedFactor = 1.0;

            string url = string.Format("http://{0}/member.aspx", AppSettings.Domain);

            Browser browser = new Browser(AppSettings.Browser,url,true);

            HomePageMember homePageMember = new HomePageMember(browser);
            homePageMember.ClickSubscribeLink();

            RegPageStep1 regPageStep1 = new RegPageStep1(browser,subscriptionPlanToSelect,
                                                         AccountInfo.DefaultInfo.Standard);

            OTLSubscriptionPlanRegPage1 otlPlan = regPageStep1.GetOTLSubscriptionPlan();
            //e.g. Monthly, MonthlyPremium, Annual, AnnualPremium
            OTLSubscriptionPlanRegPage1.SubscriptionPlan regPage1PlanSelected = otlPlan.Subscription;
            //e.g. "$37.50/month" "$250.00/year" "$375.00/year" "$25.00/month"
            string regPage1PlanPrice = otlPlan.SubscriptionPrice;

            regPageStep1.ClickContinue();

            RegPageStep2 regPageStep2 = new RegPageStep2(browser, BillingInformation.DefaultInfo.Standard,
                                                         PaymentInformation.DefaultInfo.Standard);

            OTLSubscriptionPlanRegPage2 otlPlanPage2 = regPageStep2.GetOTLSubscriptionPlan();
            //e.g. "Monthly Premium Subscription" "Monthly Subscription" "Annual Subscription" "Annual Premium Subscription"
            string regPage2PlanName = otlPlanPage2.PlanName;
            //e.g. "$37.50/month" "$25.00/month" "$250.00/year" "$375.00/year"
            string regPage2PlanPrice = otlPlanPage2.PlanPrice;

            regPageStep2.ClickIHaveRead();
            regPageStep2.ClickStartMembership();

            RegConfirm regPageConfirm = new RegConfirm(browser);
            OTLPlanInfo otlPlanInfo = regPageConfirm.GetOTLPlanInfo();
            string confirmPagePlanName = otlPlanInfo.Name; //e.g. "Monthly Premium" "Monthly" "Annual" "Annual Premium"
            string confirmPagePlanPrice = otlPlanInfo.Price; //e.g. "$37.50" "$25.00" "$250.00" "$375.00"

            regPageConfirm.ClickLogoutLink();

            homePageMember.WaitForLoad();

            //Verify displayed subscription info on reg page 2 and confirm page matches what was selected on reg page 1.
            Validate.AreEqual(string.Compare(regPage2PlanName,regPage2PlanNameExpected,false),0,
                              "Actual:{0} Expected:{1}",true);
            Validate.AreEqual(string.Compare(confirmPagePlanName,confirmPagePlanNameExpected,false),0,
                              "Actual:{0} Expected:{1}",true);
            Validate.AreEqual(string.Compare(regPage1PlanPrice,regPage2PlanPrice,false),0,
                              "Actual:{0} Expected:{1}",true);
            Validate.AreEqual(string.Compare(confirmPagePlanPrice,regPage2PlanPrice.Substring(0,confirmPagePlanPrice.Length),false),0,
                              "Actual:{0} Expected:{1}",true);
        }
Пример #3
0
        /// <summary>
        /// Performs the playback of actions in this module.
        /// </summary>
        /// <remarks>You should not call this method directly, instead pass the module
        /// instance to the <see cref="TestModuleRunner.Run(ITestModule)"/> method
        /// that will in turn invoke this method.</remarks>
        void ITestModule.Run()
        {
            Mouse.DefaultMoveTime = 50;
            Keyboard.DefaultKeyPressTime = 50;
            Delay.SpeedFactor = 1.0;

            string url = string.Format("http://{0}/member.aspx",AppSettings.Domain);

            Browser browser = new Browser(AppSettings.Browser, url,true);

            HomePageMember homePageMember = new HomePageMember(browser);
            homePageMember.ClickSubscribeLink();

            RegPageStep1 regPageStep1 = new RegPageStep1(browser,OTLSubscriptionPlanRegPage1.SubscriptionPlan.MonthlyPremium,
                                                         AccountInfo.DefaultInfo.Standard);

            regPageStep1.CheckOrUncheckMonthlyNewsletters(true);
            regPageStep1.CheckOrUncheckNewReleases(true);
            regPageStep1.CheckOrUncheckSpecialAnnouncements(true);
            regPageStep1.FillAccountInfo(); //standard info default.

            //custom
            AccountInfo accountInfo = new AccountInfo(); //Nothing initialized

            accountInfo.SignMeUpNewReleases=true;
            accountInfo = new AccountInfo(AccountInfo.DefaultInfo.Standard); //Standard account info
            //change standard values to custom
            accountInfo.FirstName="Trebek";
            accountInfo.SignMeUpSpecial=false;
            regPageStep1.FillAccountInfo(accountInfo);
            //write to one field only
            regPageStep1.FillAccountInfo(AccountInfo.Field.LastName, "Connery");
            regPageStep1.FillAccountInfo(AccountInfo.Field.FirstName, "Sean");
            //get current account info
            accountInfo = regPageStep1.GetAccountInfo();
            string firstName = accountInfo.Username;
            bool newReleasesChecked = accountInfo.SignMeUpNewReleases;
            //change subscription plan
            regPageStep1.SelectOTLSubscription(OTLSubscriptionPlanRegPage1.SubscriptionPlan.Monthly);
            //get current plan
            OTLSubscriptionPlanRegPage1 otlSubscriptionPlan = regPageStep1.GetOTLSubscriptionPlan();
            OTLSubscriptionPlanRegPage1.SubscriptionPlan otlCurrentPlan = otlSubscriptionPlan.Subscription;

            regPageStep1.ClickContinue();

            RegPageStep2 regPageStep2 = new RegPageStep2(browser, BillingInformation.DefaultInfo.Standard,
                                                         PaymentInformation.DefaultInfo.Standard);

            regPageStep2.FillBillingInfo(); //standard info default
            regPageStep2.FillPaymentInfo(); //standard info default
            //custom
            BillingInformation billingInfo = new BillingInformation(); //nothing initialized
            billingInfo.HowHear="Radio";
            PaymentInformation paymentInfo = new PaymentInformation(); //nothing ititialized
            paymentInfo.ExpirationYear="2013";
            billingInfo = new BillingInformation(BillingInformation.DefaultInfo.Standard); //standard billing info
            paymentInfo = new PaymentInformation(PaymentInformation.DefaultInfo.Standard); //standard payment info
            //change standard values to custom
            billingInfo.Phone="5555551234";
            paymentInfo.ExpirationYear="2014";
            regPageStep2.FillBillingInfo(billingInfo);
            regPageStep2.FillPaymentInfo(paymentInfo);
            //write to one field only
            regPageStep2.FillBillingInfo(BillingInformation.Field.Apt, "1");
            regPageStep2.FillPaymentInfo(PaymentInformation.Field.ExpireYear, "2015");
            //get current billing and payment info
            billingInfo = regPageStep2.GetBillingInfo();
            paymentInfo = regPageStep2.GetPaymentInfo();
            string billingAddress = billingInfo.Address;
            string paymentNameOnCard = paymentInfo.NameOnCard;

            regPageStep2.ClickIHaveRead();
            regPageStep2.ClickStartMembership();
        }