基於Python ddt, selenium資料驅動測試執行個體1

來源:互聯網
上載者:User

標籤:自動化測試   selenium   

#!/usr/bin/python # -*- coding: utf-8 -*-'''Created on 2015-04-27@author: beyondzhou@name: logintest.py'''import unittestfrom ddt import ddt, data, unpackfrom selenium import webdriverimport osimport timefrom selenium.common.exceptions import NoSuchElementExceptionfrom selenium.webdriver.common.by import By@ddtclass LoginTest(unittest.TestCase):        @classmethod    def setUp(cls):        # Get the driver of chrome        chromedriver = "C:\Program Files\Google\Chrome\Application\chromedriver.exe"        os.environ["webdriver.chrome.driver"] = chromedriver        cls.browser = webdriver.Chrome(chromedriver)        cls.browser.get('http://10.10.51.150')        time.sleep(1)    @data(("admin", "pica8", "Configuration"), ("admin", "pica9", "Invalid username or password"))    @unpack    def test_login_in(self, username, password, expected_value):        # test login in                      self.browser.find_element_by_xpath("//input[@placeholder='Username']").send_keys(username)        self.browser.find_element_by_xpath("//input[@placeholder='Password']").send_keys(password)        self.browser.find_element_by_tag_name("button").click()        time.sleep(1)        self.assertTrue(self.is_content_present("%s" % expected_value))             def is_element_present(self, how, what):        """        Utility method to check presence of an element on page        :params how: by locator type        :params what: locator value        """        try:             self.browser.find_element(by=how, value=what)        except NoSuchElementException, _:            return False        return True        def is_content_present(self, what):        """        Utility method to check presence of an element on page        :params what: content value        """        try:             self.browser.find_element(by=By.XPATH, value="//*[contains(text(), '%s')]" % what)        except NoSuchElementException, _:            return False        return True        @classmethod    def tearDown(cls):        # define when you need        cls.browser.quit()        if __name__ == '__main__':    unittest.main(verbosity=2)


Result:

test_login_in_1___admin____pica8____Configuration__ (__main__.LoginTest) ... oktest_login_in_2___admin____pica9____Invalid_username_or_password__ (__main__.LoginTest) ... ok----------------------------------------------------------------------Ran 2 tests in 17.688sOK


基於Python ddt, selenium資料驅動測試執行個體1

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.