class Test_002_DDT_Login:
    baseURL = ReadConfig.getApplicationURL()
    path = ".//TestData/Data.xlsx"
    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_login_ddt(self, setup):
        self.logger.info("************Test_002_DDT_Login***********")
        self.logger.info("************Verify Login ************")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)
        self.rows = ExcelUtils.getRowCount(self.path, 'Sheet1')
        print("Number of row i a excel", self.rows)
        lst_status = []
        for r in range(2, self.rows + 1):
            self.user = ExcelUtils.readData(self.path, 'Sheet1', r, 1)
            self.passw = ExcelUtils.readData(self.path, 'Sheet1', r, 2)
            self.exp = ExcelUtils.readData(self.path, 'Sheet1', r, 3)

            self.lp.setUserName(self.user)
            self.lp.setPassword(self.passw)
            self.lp.clickLogin()
            time.sleep(5)
            title = self.driver.title

            if title == "Dashboard / nopCommerce administration":
                if self.exp == "Pass":
                    self.logger.info("***Passed")
                    self.lp.clickLogout()
                    lst_status.append("Pass")
                elif self.exp == "Fail":
                    self.logger.info("***Fail")
                    self.lp.clickLogout()
                    lst_status.append("Fail")
            elif title != "Dashboard / nopCommerce administration":
                if self.exp == "Pass":
                    self.logger.info("***Fail")
                    lst_status.append("Fail")
                elif self.exp == "Fail":
                    self.logger.info("***Passed")
                    lst_status.append("Pass")

        if "Fail" not in lst_status:
            self.logger.info("*******Login DDT Passed******")
            self.driver.close()
            assert True
        else:
            self.logger.info("*******Login DDT Failed******")
            self.driver.close()
            assert True

        self.logger.info("*********End of Login DDT Test***********")
    def test_login(self, setup):
        self.logger.info("************Verify Login ************")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.user)
        self.lp.setPassword(self.passw)
        self.lp.clickLogin()
        title = self.driver.title

        if title == "Dashboard / nopCommerce administration":
            self.driver.close()
            assert True
            self.logger.info("************Verify Login is Passed ************")
        else:
            self.logger.error(
                "************Verify Login is failed ************")
            self.driver.save_screenshot(".\\Screenshots\\" + "test_login.png")
            self.driver.close()
            assert False
 def login(driver, username, password):
     try:
         login = LoginPage(driver)
         login.getKey("loginPage.username").send_keys(username)
         login.getKey("loginPage.password").send_keys(password)
         login.getKey("loginPage.loginButton").click()
     except Exception as e:
         raise e
Exemple #4
0
    def test_searchCustomerEmail(self, setup):
        self.logger.info(
            "****************Test_004_SearchCustomerEmail*************************"
        )
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.user)
        self.lp.setPassword(self.passw)
        self.lp.clickLogin()
        self.logger.info("**********Login success***********")
        self.logger.info(
            "**********Starting Test_004_SearchCustomerEmail Test*********")

        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomersMenu()
        time.sleep(5)
        self.addcust.clickOnSubCustomerMenu()
        time.sleep(5)

        self.searchCustomer = SearchCustomer(self.driver)
        self.searchCustomer.setemail("*****@*****.**")
        time.sleep(2)
        self.searchCustomer.clickSearch()
        time.sleep(2)
        self.logger.info(
            "**********Verify Result Test_004_SearchCustomerEmail Test*********"
        )

        result = self.searchCustomer.searchCustomerByEmail(
            "*****@*****.**")
        assert result == True
        self.logger.info(
            "*******Result Test_004_SearchCustomerEmail Test PASS*********")
        self.driver.close()
 def login(driver, username, password):
     try:
         login = LoginPage.loginPage(driver)
         # 将当前焦点切换到登录模块的frame中,以便能进行后续登录操作
         login.switchToFrame()
         # 输入登录用户名
         login.userNameObj().send_keys(username)
         # 输入密码
         login.passwordObj().send_keys(password)
         time.sleep(3)
         # 点击登录按钮
         login.loginButton().click()
         time.sleep(3)
         # 切换回主窗口
         login.switchToDefaultFrame()
     except Exception as e:
         raise e
class Test_001_Login:
    baseURL = ReadConfig.getApplicationURL()
    user = ReadConfig.getUser()
    passw = ReadConfig.getPassw()
    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_HomePageTitle(self, setup):
        self.logger.info("************Test_001_Login************")
        self.logger.info("************Verify Home Page Title ************")
        self.driver = setup
        self.driver.get(self.baseURL)
        title = self.driver.title
        if title == "Your store. Login":
            self.driver.close()
            assert True
            self.logger.info(
                "************Home Page title is passed ************")
        else:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_homePageTitle.png")
            self.driver.close()
            self.logger.error(
                "************Home Page title is failed ************")
            assert False

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_login(self, setup):
        self.logger.info("************Verify Login ************")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.user)
        self.lp.setPassword(self.passw)
        self.lp.clickLogin()
        title = self.driver.title

        if title == "Dashboard / nopCommerce administration":
            self.driver.close()
            assert True
            self.logger.info("************Verify Login is Passed ************")
        else:
            self.logger.error(
                "************Verify Login is failed ************")
            self.driver.save_screenshot(".\\Screenshots\\" + "test_login.png")
            self.driver.close()
            assert False
class Test_005_SearchCustomerName:
    baseURL = ReadConfig.getApplicationURL()
    user = ReadConfig.getUser()
    passw = ReadConfig.getPassw()
    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_searchCustomerName(self, setup):
        self.logger.info(
            "****************Test_004_SearchCustomerEmail*************************"
        )
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.user)
        self.lp.setPassword(self.passw)
        self.lp.clickLogin()
        self.logger.info("**********Login success***********")
        self.logger.info(
            "**********Starting Test_005_SearchCustomerName Test*********")

        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomersMenu()
        time.sleep(5)
        self.addcust.clickOnSubCustomerMenu()
        time.sleep(5)

        self.searchCustomer = SearchCustomer(self.driver)
        self.searchCustomer.setfirstname("Victoria")
        time.sleep(2)
        self.searchCustomer.setlastname("Terces")
        self.searchCustomer.clickSearch()
        time.sleep(2)
        self.logger.info(
            "**********Verify Result Test_005_SearchCustomerName Test*********"
        )

        result = self.searchCustomer.searchCustomerName("Victoria Terces")
        assert result == True
        self.logger.info(
            "*******Result Test_005_SearchCustomerName Test PASS*********")
        self.driver.close()
    def test_addCustomer(self, setup):
        self.logger.info(
            "****************Test_003_AddCustomer*************************")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.user)
        self.lp.setPassword(self.passw)
        self.lp.clickLogin()
        self.logger.info("**********Login success***********")
        self.logger.info("**********Starting Add Customer Test*********")

        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomersMenu()
        self.addcust.clickOnSubCustomerMenu()

        time.sleep(5)

        self.addcust.clickAddButton()

        self.logger.info("***************Provide customer info*********")
        time.sleep(2)

        self.email = random_generator() + "@gmail.com"
        print("Email" + self.email)
        self.addcust.setEmail(self.email)
        time.sleep(2)
        self.addcust.setPassword("test123")
        time.sleep(2)
        self.addcust.setFirstName("HVN")
        time.sleep(2)
        self.addcust.setLastName("Test")
        time.sleep(2)

        self.addcust.setGender("Male")
        time.sleep(2)
        self.addcust.setbirthday("04/04/1975")
        time.sleep(2)

        self.addcust.setcompany("Company")
        time.sleep(2)
        self.addcust.settaxexcempt()
        time.sleep(2)

        # self.addcust.setNewsletter("Test store 2")
        time.sleep(2)
        self.addcust.setRole("Registered")
        time.sleep(2)

        self.addcust.setVendor("Vendor 1")
        time.sleep(2)
        self.addcust.setAdmincomment("Admin comment")

        self.addcust.save()

        self.logger.info("**********Verify add customer*********")
        self.msg = self.driver.find_element_by_tag_name("body").text

        print(self.msg)
        if 'customer has been added successfully.' in self.msg:
            assert True
            self.logger.info("********* Add customer Test Passed *********")
        else:
            self.driver.save_screenshot(
                ".\\Screenshots\\" + "test_addCustomer_scr.png")  # Screenshot
            self.logger.error(
                "********* Add customer Test Failed ************")
            assert False

        self.driver.close()
        self.logger.info("******* Ending Add customer test **********")
 def execute(driver, keyword):
     # driver.get("https://www.baidu.com")
     loginPage = LoginPage.LoginPage(driver, "..\confile.conf")
     loginPage.searchBox().send_keys(keyword)
     time.sleep(5)