def browser(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("浏览器结束时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 600: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.press("home") # 回到首页 # 进入格力定制版UC浏览器 d.app_start("com.gree.explorer") logger.info("启动了浏览器") time.sleep(5) # 点击百度小图标 d(text="人民网").click() logger.info("开始人民网新闻浏览") time.sleep(5) logger.info("开始上下滑动操作") # 滑动操作 d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) logger.info("结束人民网新闻浏览") # 返回上一层 d.press('back') time.sleep(5) # 停止程序运行 d.press("home") except Exception as e: logger.error("浏览器元素定位出错!" + str(e)) d.app_stop("com.gree.explorer") pass c = time.time() b = c time.sleep(1) d.press('back') time.sleep(5) d.press("home") end_time = datetime.datetime.now() logger.info("本轮浏览器结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮浏览器总共耗时:%s" % (str(expend_time).split('.')[0]))
def dialer(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("拨号开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 300: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.press("home") # 回到桌面 # 进入拨号界面 d.app_start("com.android.dialer") time.sleep(5) logger.info("点击112开始拨号") d(resourceId="com.android.dialer:id/one").click() time.sleep(1) d(resourceId="com.android.dialer:id/one").click() time.sleep(1) d(resourceId="com.android.dialer:id/two").click() time.sleep(1) d(resourceId="com.android.dialer:id/dialpad_floating_action_button" ).click() time.sleep(30) d(resourceId="com.android.dialer:id/incall_end_call").click() logger.info("结束112拨号") time.sleep(5) d.app_stop("com.android.dialer") except Exception as e: logger.error("dialer元素定位出错!" + str(e)) d.app_stop("com.android.dialer") c = time.time() b = c time.sleep(5) d.press("home") end_time = datetime.datetime.now() logger.info("本轮拨号结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮拨号总共耗时:%s" % (str(expend_time).split('.')[0]))
def wangzherongyaotest(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 开启uiautomator 防止重复启动 d.service("uiautomator").start() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("王者荣耀开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 300: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.app_start('com.tencent.tmgp.sgame') logger.info("启动王者荣耀") time.sleep(30) except Exception as e: logger.error("王者荣耀元素定位出错!" + str(e)) d.app_stop('com.tencent.tmgp.sgame') c = time.time() b = c time.sleep(2) d.app_stop('com.tencent.tmgp.sgame') end_time = datetime.datetime.now() logger.info("本轮王者荣耀结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮王者荣耀总共耗时:%s" % (str(expend_time).split('.')[0]))
def wechattest(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("微信开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 600: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.press("home") # 启动微信 d.app_start("com.tencent.mm") logger.info("启动了微信") # 暂停 time.sleep(5) # 点击微信 d(text='微信').click() time.sleep(5) # 点击通讯录 d(text='通讯录').click() time.sleep(2) logger.info("点击通讯录") d(text='群聊').click() time.sleep(2) d(text='gelitest').click() logger.info("点击群聊") time.sleep(1) # 点击输入框 d.click(200, 2300) d.set_fastinput_ime(False) time.sleep(1) # 清除输入框 d(focused=True).set_text("格力续航测试123ABC") d.set_fastinput_ime(False) time.sleep(1) # 点击发送按钮 d(text='发送').click() logger.info("发送文字") time.sleep(2) # 点击+号 d(description="更多功能按钮,已折叠").click() # d.click(0.948, 0.907) time.sleep(1) # 选择相册按钮 d(text="相册").click() time.sleep(1) #点击第1张图片 d(className='android.widget.CheckBox').click() time.sleep(1) # 通过发送按钮文本字样定位 d(text='发送(1/9)').click() logger.info("发送图片") time.sleep(2) # 切换到按住说话 d.click(0.083, 0.974) time.sleep(1) # 定位到语音输入按钮 # d(resourceId="com.tencent.mm:id/aqa").click() # 点击“按住说话”按钮3秒 d(description='按住说话').long_click(3) logger.info("发送语音") # d(resourceId="com.tencent.mm:id/aqd").long_click(3) time.sleep(1) d(description='切换到键盘').click() time.sleep(1) # 返回到上一界面 d.press("back") time.sleep(2) d.press("back") time.sleep(2) d.app_start("com.tencent.mm") time.sleep(1) # 定位到发现 d(text='发现').click() time.sleep(2) # 定位到朋友圈 d(text='朋友圈').click() logger.info("浏览朋友圈上下滑动") time.sleep(15) # 滑动操作 d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.press("back") time.sleep(2) # 返回到桌面 d.press("home") except Exception as e: logger.error("微信元素定位出错!" + str(e)) d.app_stop("com.tencent.mm") c = time.time() b = c time.sleep(2) d.press("home") end_time = datetime.datetime.now() logger.info("本轮微信结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮微信总共耗时:%s" % (str(expend_time).split('.')[0]))
# 定义一个处理打印日志的方法 logger = logging.getLogger(__name__) logger.setLevel(level=logging.INFO) formatter = logging.Formatter( '[%(asctime)s]-[%(name)s]-[%(levelname)s]-%(message)s') file_time = time.strftime("%Y-%m-%d-%H-%M-%S", time.localtime()) result_root = '{}//'.format(file_time) if not os.path.exists(result_root): # 如果目录不存在则创建 os.makedirs(result_root) logfile = result_root + '{}.log'.format(file_time) handler = logging.FileHandler(logfile) handler.setLevel(logging.INFO) handler.setFormatter(formatter) logger.addHandler(handler) device_settings = Devices() d = u2.connect_usb(device_settings.device) def test_pre(): # 使用usb连接电脑,测试开始前模拟执行如下命令,模拟断电,正常耗电。 os.system("adb shell dumpsys battery unplug") # 测试开始前重置电量信息 os.system("adb shell dumpsys batterystats --reset") print('\033[1;40;43m 测试运行中,请谨慎关闭窗口... \033[0m') # 有高亮 print('\033[1;40;32m 测试运行中,请谨慎关闭窗口... \033[0m') # 有高亮 print('\033[1;31;40m 测试运行中,请谨慎关闭窗口... \033[0m') # 有高亮 def get_device(): # 连接手机
def aiqiyitest(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("爱奇艺开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 600: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.press("home") # 打开微博 d.app_start("com.qiyi.video") logger.info("启动了爱奇艺") time.sleep(10) # 必须要运行监测器 d.watcher('Permission_a').when(text='允许').click() d.watcher('Permission_b').when( resourceId="com.qiyi.video:id/dialog_close").click() d.watcher('Permission_i').when(text='不了,谢谢').click() d.watcher('Permission').when(text='暂不升级').click( text='暂不升级') # 如果出现以后再说点击 d.watcher("Permission_a").watched = True d.watcher("Permission_b").watched = True d.watcher("Permission_i").watched = True d.watcher("Permission").watched = True # 点击搜索框 d.click(0.347, 0.073) time.sleep(1) logger.info("输入楚乔传搜索") # 输入楚乔传并搜索 d(focused=True).set_text("楚乔传") d(text="搜索").click() time.sleep(2) d.click(0.118, 0.429) logger.info("开始播放第一集") time.sleep(2) if (d(text="继续播放").exists): d(text="继续播放").click() i = 0 while i < 10: d.swipe(500, 1800, 500, 1000) time.sleep(30) d.swipe(500, 1000, 500, 1800) time.sleep(30) i += 1 c = time.time() b = c except Exception as e: logger.error("爱奇艺元素定位出错!" + str(e)) d.app_stop("com.qiyi.video") logger.info("10分钟播放结束") d.press("back") time.sleep(2) d.press("back") time.sleep(2) d.press("back") time.sleep(1) d.press("home") end_time = datetime.datetime.now() logger.info("本轮爱奇艺结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮爱奇艺总共耗时:%s" % (str(expend_time).split('.')[0]))
def taobaortest(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("淘宝开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 600: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.press("home") # 回到桌面 # 启动淘宝 d.app_start("com.taobao.taobao") logger.info("启动了淘宝") time.sleep(10) d.watcher('Permission_e').when(text='取消').click(text='取消') d.watcher('Permission_f').when(text='允许').click(text='允许') d.watcher('Permission_g').when(description="关闭").click(text='关闭') d.watcher("Permission_e").watched = True d.watcher("Permission_f").watched = True d.watcher("Permission_g").watched = True logger.info("开始搜索") # 定位搜索框 d(description="搜索").click() time.sleep(2) logger.info("搜索女鞋") # 输入女鞋搜索 d(resourceId="com.taobao.taobao:id/searchEdit").send_keys("女鞋") # 点击搜索按钮 d(resourceId="com.taobao.taobao:id/searchbtn").click() time.sleep(5) logger.info("开始滑动") # 滑动操作 d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) # 定位搜索框 d(resourceId="com.taobao.taobao:id/searchEdit").click() # 文本清除 d.clear_text() time.sleep(2) logger.info("搜索女装") d(resourceId="com.taobao.taobao:id/searchEdit").send_keys("女装") # 点击搜索按钮 d(resourceId="com.taobao.taobao:id/searchbtn").click() logger.info("开始滑动") time.sleep(2) # 滑动操作 d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) # 定位搜索框 d(resourceId="com.taobao.taobao:id/search_bar_wrapper").click() d.clear_text() time.sleep(2) logger.info("搜索女包") d(resourceId="com.taobao.taobao:id/searchEdit").send_keys("女包") # 点击搜索按钮 d(resourceId="com.taobao.taobao:id/searchbtn").click() logger.info("开始滑动") time.sleep(2) # 滑动操作 d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) # 定位搜索框 d(resourceId="com.taobao.taobao:id/search_bar_wrapper").click() d.clear_text() time.sleep(2) logger.info("开始搜索女裤") d(resourceId="com.taobao.taobao:id/searchEdit").send_keys("女裤") # 点击搜索按钮 d(resourceId="com.taobao.taobao:id/searchbtn").click() time.sleep(5) logger.info("开始滑动") # 滑动操作 d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.press("back") time.sleep(1) d.press("back") time.sleep(1) d.press("back") except Exception as e: logger.error("淘宝元素定位出错!" + str(e)) d.app_stop("com.taobao.taobao") c = time.time() b = c time.sleep(1) d.press("home") end_time = datetime.datetime.now() logger.info("本轮淘宝结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮淘宝总共耗时:%s" % (str(expend_time).split('.')[0]))
def toutiao(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("今日头条开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 600: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.press("home") # 打开微博 d.app_start("com.ss.android.article.news") logger.info("启动了今日头条") time.sleep(10) # 必须要运行监测器 d.watcher('Permission_a').when(text='允许').click() d.watcher('Permission_b').when( resourceId="com.sina.weibo:id/iv_close").click() d.watcher('Permission_i').when(text='不了,谢谢').click() d.watcher('Permission').when(text='以后再说').click( text='以后再说') # 如果出现以后再说点击 d.watcher("Permission_a").watched = True d.watcher("Permission_b").watched = True d.watcher("Permission_i").watched = True d.watcher("Permission").watched = True d.click(0.935, 0.135) time.sleep(2) d(text="关注").click() time.sleep(10) logger.info("开始滑动关注栏目") d.swipe(500, 1500, 500, 500) time.sleep(10) d.swipe(500, 1500, 500, 500) time.sleep(10) d.swipe(500, 500, 500, 1500) time.sleep(10) d.swipe(500, 500, 500, 1500) time.sleep(10) d.click(0.935, 0.135) time.sleep(2) d(text="深圳").click() time.sleep(10) logger.info("开始滑动深圳栏目") d.swipe(500, 1500, 500, 500) time.sleep(10) d.swipe(500, 1500, 500, 500) time.sleep(10) d.swipe(500, 500, 500, 1500) time.sleep(10) d.swipe(500, 500, 500, 1500) time.sleep(10) c = time.time() b = c except Exception as e: logger.error("今日头条元素定位出错!" + str(e)) d.app_stop("com.ss.android.article.news") logger.info("今日头条新闻浏览结束") time.sleep(1) d.press("home") end_time = datetime.datetime.now() logger.info("本轮今日头条结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮今日头条总共耗时:%s" % (str(expend_time).split('.')[0]))
def weibotest(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("微博开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 600: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.press("home") # 打开微博 d.app_start("com.sina.weibo") logger.info("启动了微博") time.sleep(10) # 必须要运行监测器 d.watcher('Permission_b').when( resourceId="com.sina.weibo:id/iv_close").click() d.watcher('Permission_i').when(text='不了,谢谢').click() d.watcher('Permission').when(text='以后再说').click( text='以后再说') # 如果出现以后再说点击 d.watcher("Permission_b").watched = True d.watcher("Permission_i").watched = True d.watcher("Permission").watched = True d.xpath('//*[@content-desc="首页"]').click() time.sleep(1) # 点击推荐 d.xpath('//*[@text="关注"]') logger.info("点击了关注") # time.sleep(2) logger.info("开始上下滑动") # 滑动操作 d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.press("home") except Exception as e: logger.error("微博元素定位出错!" + str(e)) d.app_stop("com.sina.weibo") c = time.time() b = c time.sleep(1) d.press("home") end_time = datetime.datetime.now() logger.info("本轮微博结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮微博总共耗时:%s" % (str(expend_time).split('.')[0]))
def douyin(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("抖音开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 600: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) d.press("home") # 回到桌面 # 进入抖音界面 d.app_start("com.ss.android.ugc.aweme") logger.info("打开了抖音") time.sleep(10) # 必须要运行监测器 d.watcher('Permission_c').when(text='好的').click() d.watcher('Permission_d').when(text='以后再说').click() d.watcher('Permission_j').when(text='我知道了').click() d.watcher('Permission_k').when(text='稍后').click() d.watcher('Permission_l').when(text='取消').click() d.watcher("Permission_c").watched = True d.watcher("Permission_d").watched = True d.watcher("Permission_j").watched = True d.watcher("Permission_k").watched = True d.watcher("Permission_l").watched = True # 定位关注 d(text="关注").click() logger.info("点击了关注") time.sleep(15) logger.info("开始上下滑动操作") # 滑动操作 d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 1500, 500, 500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) d.swipe(500, 500, 500, 1500) time.sleep(15) except Exception as e: logger.error("抖音元素定位出错!" + str(e)) d.app_stop("com.ss.android.ugc.aweme") c = time.time() b = c time.sleep(1) d.press("home") end_time = datetime.datetime.now() logger.info("本轮抖音结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮抖音总共耗时:%s" % (str(expend_time).split('.')[0]))
def qqtest(logger): # 引用Settings文件中的配置项 device_settings = Devices() # 设备信息 d = u2.connect_usb(device_settings.device) time.sleep(2) if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() # 获取测试开始时间 start_time = datetime.datetime.now() logger.info("QQ开始时间: %s" % (str(start_time).split('.')[0])) a = time.time() b = a while b - a < 600: # 设置运行时间大于 b - a 时跳出循环,其中b - a单位是秒 try: if not d.info['screenOn']: # 监测屏幕是否休眠 如是则解锁点亮屏幕 d.healthcheck() time.sleep(2) # 启用qq d.app_start("com.tencent.mobileqq") logger.info("打开了QQ") time.sleep(5) # 点击联系人 d.xpath('//*[@text="联系人"]').click() logger.info("点击了联系人") time.sleep(2) # 点击群聊 d(text="群聊").click() time.sleep(2) d(text="gelitest").click() logger.info("点击gelitest") time.sleep(1) # 点击发送消息 输入文字 d(resourceId="com.tencent.mobileqq:id/input").click() time.sleep(1) d(focused=True).set_text("格力续航测试123ABC") time.sleep(2) # 点击发送按钮 d(text="发送").click() logger.info("发送了文字") time.sleep(2) # 点击图片 d.click(0.267, 0.621) time.sleep(2) # 选中前两张图片 d.click(0.421, 0.674) time.sleep(1) d.click(0.889, 0.683) time.sleep(2) # 点击发送按钮 d(text="发送(2)").click() logger.info("发送了图片") time.sleep(2) # 返回上一个页面 d.press("back") time.sleep(2) d.press("back") # 返回主页面 time.sleep(2) d.press("home") except Exception as e: logger.error("QQ元素定位出错!" + str(e)) d.app_stop("com.tencent.mobileqq") c = time.time() b = c time.sleep(1) end_time = datetime.datetime.now() logger.info("本轮QQ结束时间: %s" % (str(end_time).split('.')[0])) expend_time = end_time - start_time logger.info("本轮QQ总共耗时:%s" % (str(expend_time).split('.')[0]))