1. 元素定位的8大方法包括:

    • 通过id定位:driver.find_element_by_id()
    • 通过name定位:driver.find_element_by_name()
    • 通过class定位:driver.find_element_by_class_name()
    • 通过tag name定位:driver.find_element_by_tag_name()
    • 通过link text定位:driver.find_element_by_link_text()
    • 通过partial link text定位:driver.find_element_by_partial_link_text()
    • 通过xpath定位:driver.find_element_by_xpath()
    • 通过css selector定位:driver.find_element_by_css_selector()
  2. 判断哪一种方法可用或不可用:

    • 可用:根据页面元素的特点,选择合适的定位方法进行定位。
    • 不可用:如果页面元素没有唯一的标识,或者定位方法无法准确定位到元素,就无法使用该定位方法。
  3. 对定位元素的清除、点击、输入等操作:

    • 清除:element.clear()
    • 点击:element.click()
    • 输入:element.send_keys()
  4. WebDriver中浏览器、网页的交互方法和属性的获得:

    • 浏览器交互方法:driver.get(url),driver.back(),driver.forward(),driver.refresh(),driver.quit()
    • 网页交互方法:driver.switch_to.frame(),driver.switch_to.default_content(),driver.switch_to.alert.accept(),driver.switch_to.alert.dismiss()
    • 属性获得:driver.current_url,driver.title,driver.page_source
  5. 使用python模块selenium+ddt(或者文件)+unittest模块单元测试,编写163邮箱的UI自动化测试脚本:

import unittest
from selenium import webdriver
from ddt import ddt, data, unpack

@ddt
class Test163Email(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        cls.driver = webdriver.Chrome()
        cls.driver.maximize_window()

    @classmethod
    def tearDownClass(cls):
        cls.driver.quit()

    def setUp(self):
        self.driver.get("https://mail.163.com/")

    def tearDown(self):
        pass

    @data(("username1", "password1"), ("username2", "password2"))
    @unpack
    def test_login(self, username, password):
        # 定位元素并进行操作
        username_input = self.driver.find_element_by_id("username")
        username_input.clear()
        username_input.send_keys(username)

        password_input = self.driver.find_element_by_id("password")
        password_input.clear()
        password_input.send_keys(password)

        login_button = self.driver.find_element_by_id("login")
        login_button.click()

        # 进行断言判断
        self.assertEqual(self.driver.title, "163邮箱")

if __name__ == "__main__":
    unittest.main()

心得体会:

  • 元素定位是UI自动化测试中非常重要的一步,选择合适的定位方法能够准确地定位到页面元素。
  • 通过清除、点击、输入等操作,可以模拟用户在页面上的交互行为。
  • 使用selenium+ddt(或者文件)+unittest模块可以方便地进行数据驱动的测试,提高测试效率。
  • 通过编写UI自动化测试脚本,可以自动化执行测试用例,减少人工测试的工作量,提高测试的准确性和效率。
3、元素定位的8大方法并判断哪一种方法可用或不可用。4、对定位元素的清除、点击、输入等操作。5、selenium中WebDriver中浏览器、网页的交互方法和属性的获得。6、使用python模块selenium+ddt或者文件+unittest模块单元测试写出163邮箱的UI自动化测试脚本对以上文字实现的功能提取心得体会

原文地址: http://www.cveoy.top/t/topic/hDZQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录