コード例 #1
0
class TestSearchCustomerByName_005:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()

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

        self.lp = LoginPage(self.driver)
        self.lp.SetUserName(self.username)
        self.lp.SetPassword(self.password)
        self.lp.ClickLogin()
        self.logger.info("********** Login Successful **********")

        self.logger.info(
            "********** Strating Search Customer By Name **********")
        self.addcust = AddCustomer(self.driver)
        self.addcust.ClickOnCustomersMenu()
        self.addcust.ClickOnCustomersMenuItem()

        self.logger.info("********** Search Customer By Name **********")
        searchcust = SearchCustomer(self.driver)
        searchcust.setFirstName("victoria")
        searchcust.setLastName("Terces")
        searchcust.ClickSearch()
        time.sleep(5)
        status = searchcust.searchCustomerByName("Victoria Terces")
        assert True == status
        self.logger.info("********** TC_SearchCustomerByName_005 **********")
        self.driver.close()
コード例 #2
0
class Test_006_AddManifacturer:

    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()
    manufacturer_name = "Khande works private limited"

    @pytest.mark.sanity
    def test_add_manufacturer(self, setup):
        self.logger.info("********** Test_006_AddManifacturer **********")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.logger.info("--- URL Entered Successfully")
        self.lp = LoginPage(self.driver)
        self.lp.SetUserName(self.username)
        self.logger.info("--- user name Entered :" + self.username)
        self.lp.SetPassword(self.password)
        self.logger.info("--- password Entered :" + self.password)
        self.lp.ClickLogin()
        self.logger.info("--- clicked on login")
        self.logger.info('********** login successfull **********')

        self.logger.info("********** Stating Add Manufacturer Test **********")
        self.addManufacture = ManufacturePage(self.driver)
        self.addManufacture.click_on_cateloge()
        self.logger.info("--- clicked on cateloge")
        self.addManufacture.click_on_manufacture()
        self.logger.info("--- clicked on manufacturer")
        self.addManufacture.click_on_add_nuw_button()
        self.logger.info("--- clicked on Add new button")

        self.logger.info("********** Entering manufacturer name **********")
        self.addManufacture.set_name_of_manufacturer(self.manufacturer_name)
        self.logger.info("--- Manufacturer name Entered :" +
                         self.manufacturer_name)
        self.addManufacture.click_on_save_button()
        self.logger.info("--- clicked on save button")
        self.logger.info("********** saving manufacturer **********")

        self.logger.info(
            "********** Add manufacturer validation started **********")
        self.actual_msg = self.driver.find_element_by_tag_name("body").text
        self.expected_msg = "The new manufacturer has been added successfully."

        if self.expected_msg in self.actual_msg:
            assert True == True
            self.logger.info(
                "********** Add manufacturer Test Passed **********")
        else:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_addmanufacturer_scr.png")
            self.logger.error(
                "********** Add Manufacturer Test Failed **********")
            assert True == False

        self.driver.close()
        self.logger.info(
            "********** Ending Test_006_AddManifacturer **********")
コード例 #3
0
class Test_Login_001:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()
    # Storing the value in logger variable , whatever return from LogGen.loggen (Class.method)
    logger = LogGen.loggen()

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_homePageTitle(self, setup):
        # Rather than direct defining Browser here, we can call Fixture from conftest.py
        # self.driver = WebDriver.Chrome()
        self.logger.info("********** Test_Login_001*************")
        self.logger.info(
            "********** Verifying Home Page Title Scenario*************")
        self.driver = setup
        self.driver.get(self.baseURL)
        time.sleep(5)
        act_title = self.driver.title
        if act_title == "Your store. Login":
            assert True
            self.driver.close()
            self.logger.info(
                "********** Home Page Title Test Passed*************")
        else:
            self.driver.save_screenshot("..\\Screenshots\\" +
                                        "test_homePageTitle1.png")
            self.driver.close()
            self.logger.error(
                "********** Home Page Title Test Failed*************")
            assert False

    @pytest.mark.sanity
    def test_login(self, setup):
        # Rather than direct defining Browser here, we can call Fixture from conftest.py
        # self.driver = WebDriver.Chrome()
        self.logger.info("********** Verifying Login Scenario*************")
        self.driver = setup
        self.driver.get(self.baseURL)
        # Create Object of LoginPage Class and calling driver, as it constructor in LoginPage Clas
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.ClickLogin()
        act_title = self.driver.title

        if act_title == 'Dashboard / nopCommerce administration':
            assert True
            self.logger.info(
                "********** User Navigated to Dashboard Page*************")
            self.driver.close()
        else:
            self.driver.save_screenshot("..\\Screenshots\\" + "test_login.png")
            self.driver.close()
            self.logger.error(
                "********** User didn't navigated to Dashboard Page*************"
            )
            assert False
コード例 #4
0
ファイル: test_Login.py プロジェクト: khandepc/nopcommersApp
class Test_001_Login:
    baseURL=ReadConfig.getApplicationURL()
    useremail=ReadConfig.getUseremail()
    password=ReadConfig.getPassword()
    logger=LogGen.loggen()

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

    @pytest.mark.regression
    @pytest.mark.sanity
    def test_login(self,setup):
        self.logger.info("********************* Verifying login test **********************")
        self.driver=setup
        self.driver.get(self.baseURL)
        self.lp=LoginPage(self.driver)
        self.lp.SetUserName(self.useremail)
        self.lp.SetPassword(self.password)
        self.lp.ClickLogin()
        actual_title=self.driver.title
        if actual_title=="Dashboard / nopCommerce administration":
            assert True
            self.logger.info("********************* login test is passed **********************")
            self.driver.close()
        else:
            self.driver.save_screenshot("./Screenshots/" + "test_login.png")
            self.driver.close()
            self.logger.error("********************* login test is failed **********************")
            assert False
コード例 #5
0
class Test_search_manufacturere_by_name_007:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()

    def test_search_manufacturer_by_name(self, setup):
        self.logger.info("******Test_search_manufacturere_by_name_007 ******")
        self.driver = setup
        self.driver.get(self.baseURL)

        self.lp = LoginPage(self.driver)
        self.lp.SetUserName(self.username)
        self.lp.SetPassword(self.password)
        self.lp.ClickLogin()
        self.logger.info("****** Login successfull ******")

        self.logger.info("****** search manufacturer by name started ******")
        self.mp = ManufacturePage(self.driver)
        self.mp.click_on_cateloge()
        self.mp.click_on_manufacture()
        self.mp.search_manufacturer_name("khande works")
        self.mp.click_on_search_button()

        self.logger.info(
            "****** Search manufacturer by name Validation start ******")
        time.sleep(5)
        actual_result = self.driver.find_element_by_xpath(
            "//*[@id='manufacturers-grid']/tbody/tr/td[2]").text
        expected_result = "Khande works"
        if expected_result in actual_result:
            assert True
            self.logger.info("actual result is " + actual_result)
            self.logger.info("****** Search manufacturer test passed ******")
        else:
            self.logger.error("****** Search manufacturer test failed ******")
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_Search_manufacturer_scr.png")
            self.driver.close()
            assert False
        self.driver.close()
        self.logger.info(
            "****** Ending Test_search_manufacturere_by_name_007 ******")
コード例 #6
0
class Test_Login_001:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_homePageTitle(self, setup):
        self.driver = setup
        self.driver.get(self.baseURL)

        time.sleep(5)
        act_title = self.driver.title
        if act_title == "Your store. Login":
            assert True
            self.driver.close()
        else:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_homePageTitle.png")
            self.driver.close()
            assert False

    @pytest.mark.sanity
    def test_login(self, setup):
        # Rather than direct defining Browser here, we can call Fixture from conftest.py
        # self.driver = WebDriver.Chrome()

        self.driver = setup
        self.driver.get(self.baseURL)
        # Create Object of LoginPage Class and calling driver, as it constructor in LoginPage Clas
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.ClickLogin()
        act_title = self.driver.title
        if act_title == 'Dashboard / nopCommerce administration':
            assert True
            self.driver.close()
        else:
            self.driver.save_screenshot(".\\Screenshots\\" + "test_login.png")
            self.driver.close()
            assert False
コード例 #7
0
class Test_customer_add_005:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()

    @pytest.mark.user
    def test_add_new_product(self, setup):
        self.driver = setup
        self.driver.get(self.baseURL)
        # Create Object of LoginPage Class and calling driver, as it constructor in LoginPage Clas
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.ClickLogin()
        self.customer = AddProduct(self.driver)
        self.customer.catalog_main_menu()
        self.customer.add_new_product()
        self.customer.product_name()
        self.customer.category_selection()
        self.customer.product_tags()
        self.customer.GTIN()
        self.customer.save_product()
コード例 #8
0
class Test_customer_add_003:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()

    @pytest.mark.user
    def test_add_new_customer(self, setup):
        self.driver = setup
        self.driver.get(self.baseURL)
        # Create Object of LoginPage Class and calling driver, as it constructor in LoginPage Clas
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.ClickLogin()
        self.customer = AddCustomer(self.driver)
        self.customer.customer_main_menu()
        self.customer.customer_sub_menu()
        customer_email = self.customer.customer_email()
        self.customer.enter_first_name()
        self.customer.enter_last_name()
        self.customer.save_customer()
        self.customer.search_email_address(customer_email)
        self.customer.button_search()
コード例 #9
0
class TestSearchCustomerByEmail_004:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()

    @pytest.mark.smoke
    @pytest.mark.regression
    def test_searchCustomerByEmail(self, setup):
        self.logger.info(
            "*********** SearchCustomerByEmail_004 **************")
        self.driver = setup
        self.driver.get(self.baseURL)

        self.lp = LoginPage(self.driver)
        self.lp.SetUserName(self.username)
        self.lp.SetPassword(self.password)
        self.lp.ClickLogin()
        self.logger.info("********** Login Successful **********")

        self.logger.info(
            "********** Strating Search Customer By Email **********")
        self.addcust = AddCustomer(self.driver)
        self.addcust.ClickOnCustomersMenu()
        self.addcust.ClickOnCustomersMenuItem()

        self.logger.info("********** Search Customer By EmailID **********")
        searchcust = SearchCustomer(self.driver)
        searchcust.setEmail("*****@*****.**")
        searchcust.ClickSearch()
        time.sleep(5)
        status = searchcust.searchCustomerByEmail(
            "*****@*****.**")
        assert True == status
        self.logger.info(
            "********** TC_SearchCustomerByEmail_004 Finished **********")
        self.driver.close()
コード例 #10
0
class Test_003_AddCustomer:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()

    @pytest.mark.sanity
    def test_addCustomer(self, setup):
        self.logger.info("************* Test_003_AddCustomer **************")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.logger.info("--- URL Entered")

        self.lp = LoginPage(self.driver)
        self.lp.SetUserName(self.username)
        self.logger.info("--- Username Entered :" + self.username)
        self.lp.SetPassword(self.password)
        self.logger.info("--- Password Entered :" + self.password)
        self.lp.ClickLogin()
        self.logger.info("--- clicked on login")
        self.logger.info("*************** Login Successful ****************")

        self.logger.info(
            "*************** Starting Add Customer Test ************")
        self.addcust = AddCustomer(self.driver)
        self.addcust.ClickOnCustomersMenu()
        self.logger.info("--- clicked on Customers Menu")
        self.addcust.ClickOnCustomersMenuItem()
        self.logger.info("--- clicked on Customers Menu Item")
        self.addcust.ClickOnAddnew()
        self.logger.info("--- clicked on Add New")

        self.logger.info("*********** Providing customer info ************")
        self.email = random_generator() + "@gmail.com"
        self.addcust.setEmail(self.email)
        self.addcust.setPassword("test123")
        self.addcust.setFirstname("Prashant")
        self.addcust.setLastname("Khande")
        self.addcust.setGender("Male")
        self.addcust.setDob("4/09/1996")  # Format : D/MM/YYYY
        self.addcust.setCompantName("KWPL")
        #self.addcust.setNewsletter()
        self.addcust.setCustomerRoles("Guests")
        self.addcust.setManagerofVendor('Vendor 2')
        self.addcust.setAdminContent("This is foe testing...")
        self.addcust.ClickOnSave()
        self.logger.info("*********** Saving customer info *************")

        self.logger.info(
            "*********** Add customer validation Started **********")
        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 == 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 **********")
            self.driver.close()
            assert True == False

        self.driver.close()
        self.logger.info(
            "********** Ending Test_003_AddCustomer *************")
コード例 #11
0
class Test_002_DDT_Login:
    baseURL = ReadConfig.getApplicationURL()
    path = ".//TestData/LoginData.xlsx"
    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_login_ddt(self, setup):
        self.logger.info(
            "********************* Test_002_DDT_Login ************************"
        )
        self.logger.info(
            "********************* Verifying login DDT test **********************"
        )
        self.driver = setup
        self.driver.get(self.baseURL)

        self.lp = LoginPage(self.driver)

        self.rows = XLUties.getRowCount(self.path, "Sheet1")
        print("number of rows in a Excel: ", self.rows)

        lst_status = []  #Empty list variable

        for r in range(2, self.rows + 1):
            self.user = XLUties.readData(self.path, "Sheet1", r, 1)
            self.password = XLUties.readData(self.path, "Sheet1", r, 2)
            self.exp = XLUties.readData(self.path, "Sheet1", r, 3)

            self.lp.SetUserName(self.user)
            self.lp.SetPassword(self.password)
            self.lp.ClickLogin()
            time.sleep(5)
            act_title = self.driver.title
            exp_title = "Dashboard / nopCommerce administration"
            if act_title == exp_title:
                if self.exp == "Pass":
                    self.logger.info("*** Passed ***")
                    self.lp.ClickLogout()
                    lst_status.append("Pass")
                elif self.exp == "Fail":
                    self.logger.info("*** Failed ***")
                    self.lp.ClickLogout()
                    lst_status.append("Fail")
            elif act_title != exp_title:
                if self.exp == "Pass":
                    self.logger.info("*** Failed ***")
                    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 test Passed ***")
            self.driver.close()
            assert True
        else:
            self.logger.info("*** Login DDT test Failed ***")
            self.driver.close()
            assert False
        self.logger.info(
            "******************** End of login DDT test ***************************"
        )
        self.logger.info(
            "********************* completed TC_Login_DDT_002 ***********************"
        )
コード例 #12
0
class Test_002_DDT_Login:
    baseURL = ReadConfig.getApplicationURL()
    path = ".//TestData//LoginData.xlsx"
    # Storing the value in logger variable , whatever return from LogGen.loggen (Class.method)
    logger = LogGen.loggen()

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_login_ddt(self, setup):
        # Rather than direct defining Browser here, we can call Fixture from conftest.py
        # self.driver = WebDriver.Chrome()
        self.logger.info("********** Test_002_DDT_Logino*************")
        self.logger.info("********** Verifying Login Scenario*************")
        self.driver = setup
        self.driver.get(self.baseURL)
        # Create Object of LoginPage Class and calling driver, as it constructor in LoginPage Clas
        self.lp = LoginPage(self.driver)

        # Get total number of rows from excel, by passing file path and sheet name
        self.rows = XLUtils.getRowCount(self.path, 'Sheet')
        print('Number of rows in a Excel=', self.rows)

        lst_status = []  # Empty list variable to store the result status

        # Using for loop to go to all data of excel, start from 2 as first will be consider as column
        # In python we have to pass rows+1, or else it will not read last cell value
        for r in range(2, self.rows + 1):
            self.username = XLUtils.readData(self.path, 'Sheet', r, 1)
            self.password = XLUtils.readData(self.path, 'Sheet', r, 2)
            self.exp = XLUtils.readData(self.path, 'Sheet', r, 3)

            self.lp.setUserName(self.username)
            self.lp.setPassword(self.password)
            self.lp.ClickLogin()
            time.sleep(5)
            act_title = self.driver.title
            exp_title = 'Dashboard / nopCommerce administration'

            #Now will check if condition to check exp and act title
            if act_title == exp_title:
                #Here will check exp message of Excelsheet 3rd column value
                if self.exp == 'Pass':
                    self.logger.info('***Passed***')
                    #Now user has to logout , so that loop can go for next set of value
                    self.lp.ClickLogout()
                    #Result of Success need to be appended to List variable
                    lst_status.append('Pass')
                elif self.exp == 'Fail':
                    self.logger.info('***Failed***')
                    #Now user has to logout , so that loop can go for next set of value
                    self.lp.ClickLogout()
                    #Result of Success need to be appended to List variable
                    lst_status.append('Fail')

            elif act_title != exp_title:
                #Here will check exp message of Excelsheet 3rd column value
                if self.exp == 'Pass':
                    self.logger.info('***Failed***')
                    #Result of Success need to be appended to List variable
                    lst_status.append('Fail')
                elif self.exp == 'Fail':
                    self.logger.info('***Passed***')
                    #Result of Success need to be appended to List variable
                    lst_status.append('Pass')

        #Now we need to check lst_status variable should not contain any Fail status
        if "Fail" not in lst_status:
            self.logger.info("****Login DDT Test Case Successful*****")
            self.driver.quit()
            assert True
        else:
            self.logger.info("****Login DDT Test Case Un-Successful*****")
            self.driver.close()
            assert False

        self.logger.info("********** End of DDT Test*************")
        self.logger.info(
            "********** Completed Test_002_DDT_Login*************")