一:前言
最近看selenium的一些教程文章,EC这个词出现的频率比较高。刚刚接触selenium的人可能会懵,所以,笔者认为得讲解一下这个词。
二:正文
EC,全称为expected_conditions,中文翻译为:预期条件。 EC出现原因: 进行网页的自动化测试时,有很多会频繁使用到的方法。selenium就把这些方法封装起来到一个模块中。之后调用方法,得引用这个模块,为了简化代码量,大家就约定俗成的简写这个模块。
EC中的方法:
- title_is(网页标题是否完全符合特定内容)
- title_contains (网页标题是否包含特定内容)
- presence_of_element_located (特定元素是否存在于页面DOM树中)
- visibility_of_element_located (特定元素是否存在于页面DOM树中并可见)
- visibility_of (特定元素是否存在于页面DOM树中并可见)
- presence_of_all_elements_located (定位的元素范围内,是否所有的元素都存在于DOM树中并且可见。)
- text_to_be_present_in_element (特定文本是否出现在特定元素中)
- text_to_be_present_in_element_value (特定文本是否在特定元素的value中)
- frame_to_be_available_and_switch_to_it (frame是否可被切换)
- invisibility_of_element_located (特定元素是否不可访问或不存在于DOM树)
- element_to_be_clickable (特定元素是否可点击)
- staleness_of (特定元素是否不在附加于DOM树中)
- element_to_be_selected (特定元素是否被选中)
- element_located_to_be_selected (特定元素是否存在于DOM树并被选中)
- element_selection_state_to_be (特定元素的选中状态是否与预期相同)
- element_located_selection_state_to_be (特定元素是否存在于DOM树,并且选中状态与预期是否相同)
- alert_is_present (弹出窗口是否存在)
使用例子:
from selenium.webdriver.support import expected_conditions as EC
result = EC.title_is('百度一下,你就知道')
print(result(self.driver))
|