Пример #1
0
def step_impl(context, element_name):
    element = world.find_element(element_name)

    if element.wait_for_not_exist():
        return True
    else:
        log.failed("Verify element '%s' exists?" % element.name, "exists", "not exists")
Пример #2
0
def step_impl(context, element_name):
    element = world.find_element(element_name)

    if element.wait_for_attribute('visible', True):
        return True
    else:
        log.failed("Verify element '%s' visible?" % element.name, "not visible", "visible")
Пример #3
0
def step_impl(context, element_name):
    element = world.find_element(element_name)

    if context.text in element.value:
        return True
    else:
        log.failed("Verify value contains? (multi-line)", element.value, value)
Пример #4
0
def step_impl(context, element_name):
    element = world.find_element(element_name)

    if element.value == context.text:
        return True
    else:
        log.failed("Verify value is? (multi-line)", element.value, context.text)
Пример #5
0
def step_impl(context, element_name):
    element = world.find_element(element_name)

    if element.wait_for_attribute('enabled', False):
        return True
    else:
        log.failed("Verify element '%s' disabled?" % element.name, "enabled", "disabled")
Пример #6
0
def step_impl(context):
    alert = world.get_alert_when_exist()

    if alert is not None:
        alert.dismiss()
    else:
        log.failed("Fail to cancel popup alert")
Пример #7
0
def step_impl(context):
    alert = world.get_alert_when_exist()

    if alert is not None:
        alert.accept()
    else:
        log.failed("Fail to accept popup alert")
Пример #8
0
def step_impl(context, element_name):
    element = world.find_element(element_name)

    if element.value == "":
        return True
    else:
        log.failed("Verify value is empty?", element.value, "<blank>")
Пример #9
0
def step_impl(context, element_name):
    element = world.find_element(element_name)

    if element.wait_for_attribute('selected', False):
        return True
    else:
        log.failed("Verify element '%s' unchecked?" % element.name, "checked", "unchecked")
Пример #10
0
def step_impl(context, element_name, value):
    value = world.replace_variables(value)
    element = world.find_element(element_name)

    if value in element.value:
        return True
    else:
        log.failed("Verify value contains?", element.value, value)
Пример #11
0
def step_impl(context, element_name, value):
    value = world.replace_variables(value)
    element = world.find_element(element_name)

    if element.get_attribute('title') == value:
        return True
    else:
        log.failed("Verify tooltip text is?", element.title, value)
Пример #12
0
def step_impl(context, element_name, value):
    value = world.replace_variables(value)
    element = world.find_element(element_name)
    classes = element.get_attribute('class')

    if value in classes:
        return True
    else:
        log.failed("Verify class contains?", classes, value)
Пример #13
0
def step_impl(context, element_name, value):
    value = world.replace_variables(value)
    element = world.find_element(element_name)
    placeholder = element.get_attribute('placeholder')

    if placeholder == value:
        return True
    else:
        log.failed("Verify placeholder text is?", placeholder, value)
Пример #14
0
def step_impl(context, value):
    value = world.replace_variables(value)
    if not value[:-4].lower() == '.png':
        value = value + '.png'
    folder = os.path.dirname(value)
    if not folder == '':
        if not os.path.exists(folder):
             os.makedirs(folder)
    if not world.save_current_page_screenshot(value):
        log.failed("Could not save a screenshot.")
Пример #15
0
def step_impl(context, url):
    url = world.replace_variables(url)
    page = Page(url=url)
    page.driver = world.driver
    page.wait_for_loading()

    if url in world.driver.current_url:
        return True
    else:
        log.failed("Verify url contains?", world.driver.current_url, url)
Пример #16
0
def step_impl(context, element_name, value):
    value = world.replace_variables(value)
    element = world.find_element(element_name)
    styles = element.get_attribute('style')
    print styles

    if value in styles:
        return True
    else:
        log.failed("Verify style contains?", styles, value)
Пример #17
0
def step_impl(context, amount, element_name):
    element = world.find_element(element_name)

    if element.count == int(amount):
        return True
    else:
        log.failed(
            "Verify amount of '%s' is?" % element.name,
            "amount = %s" % element.count,
            "amount = %s" % amount
        )
Пример #18
0
def step_impl(context, value):
    value = world.replace_variables(value)
    alert = world.get_alert_when_exist()

    if alert is None:
        log.failed("The popup alert not visible")

    if alert.text == value:
        return True
    else:
        log.failed("Verify popup message is?", alert.text, value)
Пример #19
0
def step_impl(context, element_name, value):
    value = world.replace_variables(value)
    element = world.find_element(element_name)

    if element.value |more_than| value:
        return True
    else:
        log.failed(
            "Verify value is more than?",
            "value = %s" % element.value,
            "value > %s" % value
        )
Пример #20
0
def step_impl(context, element_name1, element_name2):
    element1 = world.find_element(element_name1)
    element2 = world.find_element(element_name2)

    if element1.value |less_than_or_equal| element2.value:
        return True
    else:
        log.failed(
            "Verify element1 value is less than or equal to element2 value?",
            "element1 value = %s , element2 value = %s" % (element1.value, element2.value),
            "element1 value <= element2 value"
        )
Пример #21
0
def step_impl(context, element_name, value):
    value = world.replace_variables(value)
    element = world.find_element(element_name)

    if element.value |less_than_or_equal| value:
        return True
    else:
        log.failed(
            "Verify value is less than or equal?",
            "value = %s" % element.value,
            "value <= %s" % value
        )
Пример #22
0
def step_impl(context, element_name1, element_name2):
    element1 = world.find_element(element_name1)
    element2 = world.find_element(element_name2)

    if element1.value |more_than| element2.value:
        return True
    else:
        log.failed(
            "Verify element1 value is greater than element2 value?",
            "element1 value = %s , element2 value = %s" % (element1.value, element2.value),
            "element1 value > element2 value"
        )
Пример #23
0
def step_impl(context, element_name, value1, value2):
    element = world.find_element(element_name)

    if (element.value |more_than_or_equal| value1) and (element.value |less_than_or_equal| value2):
        return True
    elif (element.value |less_than_or_equal| value1) and (element.value |more_than_or_equal| value2):
        return True
    else:
        log.failed(
            "Verify value is between?",
            "value = %s" % element.value,
            "value is between %s and %s" % (value1, value2)
        )
Пример #24
0
    def load_config(cls, filename, site="default"):
        content = open(filename, "r")
        doc = yaml.load(content)

        if "global_config" in doc:
            cls.global_config = doc["global_config"]

        if "site_config" in doc:
            cls.site_config = doc["site_config"]

            if site == "default":
                cls.site = cls.site_config["default"]
            else:
                cls.site = site

        if cls.site not in cls.site_config:
            log.failed("Not found specified site name '%s'" % cls.site)
Пример #25
0
    def wait_for_loading(self, pathname="", timeout=15):
        self.driver.switch_to_window(self.driver.window_handles[-1])

        url = self.get_url(pathname)

        if "://" in url:
            uri = urlparse(url)
            url = uri.scheme + '://' + uri.hostname + uri.path

        ## wait until browser shows expected url
        wait = ui.WebDriverWait(self.driver, timeout)
        try:
            wait.until(lambda driver : self.driver.current_url.find(url) != -1)
            return True
        except:
            log.failed("Page load timeout (%s sec)." % timeout, self.driver.current_url, url)
            return False
Пример #26
0
    def load_browser_sizes(cls, filename):
        content = open(filename, "r")
        doc = yaml.load(content)

        for item in doc['browser_sizes']:
            try:
                name = item['name']
                size = item['size']

                width = int(size.split('x')[0].strip())
                height = int(size.split('x')[1].strip())

                cls.browser_sizes[name] = {
                    'width': width,
                    'height': height
                }
            except:
                log.failed("Invalid responsive configuration, please check");
Пример #27
0
 def get_browser_size(cls, name):
     if name in cls.browser_sizes:
         return cls.browser_sizes[name]
     else:
         log.failed("Not found responsive config '%s'" % name)
Пример #28
0
def step_impl(context, element_name, pattern):
    element = world.find_element(element_name)
    if re.match(pattern, element.value):
        return True
    else:
        log.failed("Verify value match with pattern?", element.value, pattern)
Пример #29
0
def step_impl(context, element_name, value):
    value = world.replace_variables(value)
    element = world.find_element(element_name)
    if not element.send_keys(value):
        log.failed("Fail to enters value '%s' to '%s'" % (value, element.name))
Пример #30
0
def step_impl(context, element_name):
    element = world.find_element(element_name)

    if element.value != "":
        return True
    log.failed("Verify value is not empty?", element.value, "<any value>")