Пример #1
0
    def get_time_from_timestamp(timestamp=None, time_format=None):
        """
        功能:将一个时间戳转为指定时间格式的时间,默认转为的时间格式为:%Y-%m-%d %H:%M:%S
            场景1:获取当前时间,时间格式为:%Y-%m-%d %H:%M:%S
                get_time_from_timestamp()
            场景2:获取当前时间,时间格式为:%H:%M:%S
                get_time_from_timestamp(time_format="%H:%M:%S")
            场景3:根据指定时间戳来获取时间,时间格式为:%Y-%m-%d %H:%M:%S
                get_time_from_timestamp(timestamp=1569850832)
        :param timestamp: 待转换为时间的时间戳,默认为当前时间戳
        :param time_format: 待转换成的时间格式,默认时间格式:%Y-%m-%d %H:%M:%S
        :return: 返回一个指定格式的时间
        """

        if time_format is None:
            time_format = _TIME_FORMAT
        validator.check_paramType_str(time_format)

        if timestamp is None:
            return datetime.datetime.now().strftime(time_format)

        validator.check_paramType_int(timestamp)
        local_time = time.localtime(timestamp)
        time_data = time.strftime(time_format, local_time)
        return time_data
Пример #2
0
    def get_random_fixedRange_digit(start_int: int, end_int: int):
        '''
        功能: 指定数字范围内, 随机获取一个数字
        :param start_int: 数字范围的起始值
        :param end_int: 数字范围的结束值
        :return:
        '''

        validator.check_paramType_int(start_int, end_int)

        return random.randint(start_int, end_int)
Пример #3
0
    def get_random_letterString(length=5):
        """
        功能:随机返回一个普通字符串,字符串可能包含:大小写字母
        :param length: 字符串的长度,默认长度为5
        :return: 一个字符串
        """

        validator.check_paramType_int(length)

        charset_str = string.ascii_letters
        return "".join(random.choice(charset_str) for _ in range(length))
Пример #4
0
    def assert_actual_lt_expect(self, desc_msg, actual_value, expect_value):
        """
        断言方法:actual_value < expect_value
        :param desc_msg: 需要校验的值
        :param actual_var: 实际值
        :param expect_var: 期望值
        """

        validator.check_paramType_str(desc_msg)
        validator.check_paramType_int(actual_value, expect_value)

        with allure.step('[断言校验]实际值小于期望值:{}'.format(desc_msg)):
            AllureHelper.attachText("", "实际值:{}".format(actual_value))
            AllureHelper.attachText("", "期望值:{}".format(expect_value))
            assert expect_value < actual_value
Пример #5
0
    def get_random_numberString(length=5):
        """
        功能:随机返回一个数字字符串
        :param length: 字符串的长度,默认长度为5
        :return: 一个数字字符串
        """

        validator.check_paramType_int(length)
        # TODO(dongjun): 校验length为大于0的数

        digits_str = string.digits

        if length == 1:
            return random.choice(digits_str)

        header_str = digits_str[1:]
        return random.choice(header_str) + "".join(random.choice(digits_str) for _ in range(length - 1))
Пример #6
0
    def get_custom_time(timestamp_offset, assigned_time=None):
        """
        功能:获取一个相对时间(相对于某个时间超前或滞后)
            场景1:获取超前于当前时间10s的时间
                get_custom_time(timestamp_offset=10)
            场景2:获取滞后于当前时间10s的时间
                get_custom_time(timestamp_offset=-10)
            场景2:获取超前于"2019-10-01 09:09:09"时间20s的时间
                get_custom_time(timestamp_offset=20, assigned_time="2019-10-01 09:09:09")
        :param assigned_time: 参数时间点,默认为当前时间(格式:%Y-%m-%d %H:%M:%S)
        :param timestamp_offset: 秒级时间戳偏移量(正整数表示超前m秒,负整数表示滞后m秒)
        :return: 返回一个时间,时间格式为:%Y-%m-%d %H:%M:%S
        """

        validator.check_paramType_int(timestamp_offset)

        if assigned_time is None:
            assigned_time = TimeHelper.get_time_from_timestamp()
        validator.check_paramType_str(assigned_time)

        # TODO: 通过正则来校验参数格式为:%Y-%m-%d %H:%M:%S
        timestamp = TimeHelper.get_timestamp_from_time(assigned_time)
        new_timestamp = timestamp + timestamp_offset
        return TimeHelper.get_time_from_timestamp(timestamp=new_timestamp)