Is element that contains <text> either by text or by attribute value present.

        Note: Will return the element if the outcome is positive.

        :param locator: locator tuple or list of WebElements
        :param text: text that the element should contain
        :param params: (optional) locator parameters
        :param visible: (optional) if the element should also be visible (default: False)
        :return: WebElement instance or False

def is_element_with_text_present(self, locator, text, params=None, visible=False):
        """
        Is element that contains <text> either by text or by attribute value present.

        Note: Will return the element if the outcome is positive.

        :param locator: locator tuple or list of WebElements
        :param text: text that the element should contain
        :param params: (optional) locator parameters
        :param visible: (optional) if the element should also be visible (default: False)
        :return: WebElement instance or False
        """
        elements = self.get_present_elements(locator, params, 0, visible) if not isinstance(locator, list) else locator

        if not elements:  # Can't iterate over bool
            return False

        for element in elements:
            element_text = self.get_text(element)
            if element_text is not None and text in element_text.strip():
                return element
        return False