在做Selenium自动化的时候,会遇到时间搜索框查询(如下图)并比较查询结果是否在输入的时间之类的问题。

要想解决这个问题,首先,第一步要做的就是选择时间,并获取到所选时间的文本信息。

如上图所示,获取到的时间搜索框并没有文本信息,如果直接用 .text 方法打印结果为空。

所以采用get_attribute()的方法获取元素的属性,代码实现如下:

def get_element_attribute(self, selector: str, value='value') -> str:    """获取元素属性"""    ele = self.find_element(selector)    return ele.get_attribute(value)

(左右滑动查看完整代码)

· selector:元素定位信息

· value:需要获取的属性,默认为value

获取到搜索时间属性后,我们打印结果为:2020/10/27 00:00:00 - 2020/11/26 00:00:00 ,类型为str

此时需要使用 split() 方法把结果拆分为单个日期并使用 datetime.datetime.strptime(date_string, format) 方法转换成日期类型:

· date_string:时间字符串

· format:传入的时间字符串的格式类型,

完整代码实现如下:

def select_time(self):        """时间查询"""        self.get_high_class()[0].click()        self.get_date().click()        self.get_days30().click()        self.get_date_confirm().click()        time.sleep(0.5)        #获取输入的时间并转换成date类型        timevalue = self.get_time_value()        str_start_time = timevalue.split('-')[0].strip()        str_end_time = timevalue.split('-')[1].strip()        logging.info(timevalue)        logging.info(str_start_time)        logging.info(str_end_time)        start_time = datetime.datetime.strptime(str_start_time, '%Y/%m/%d %H:%M:%S')        end_time = datetime.datetime.strptime(str_end_time, '%Y/%m/%d %H:%M:%S')        self.get_select()[0].click()        time.sleep(2)        time_text = self.get_date_text()        for i in time_text:            result_time = datetime.datetime.strptime(i.text, '%Y/%m/%d %H:%M:%S')            if start_time >= result_time or end_time <= result_time:                logging.error('----------时间查询异常,异常时间 %s ---------' % i.text)                return False        logging.info('----------时间查询测试成功---------')        return True

(向右滑动查看完整代码)

链接:https://www.cnblogs.com/5566yesongqiao/p/14043731.html

本文为51Testing经授权转载,转载文章所包含的文字来源于作者。如因内容或版权等问题,请联系51Testing进行删除

推荐阅读

点击阅读☞Selenium实现分布式执行?靠的就是它!

点击阅读☞Selenium用倦了?来试试Seldom吧!

点击阅读☞最喜欢Selenium Web自动化实践案例了,跟着敲代码不香吗

点击阅读☞双剑合璧!利用Selenium调用JS代码

点击阅读☞使用CentOS 命令Selenium自动测试

在搜索框自动输入文本_Selenium 时间搜索框查询和日期大小比较相关推荐

  1. 在搜索框自动输入文本_selenium自动化测试之常见的定位元素

    01一.Selenium介绍 Selenium 是什么?一句话,自动化测试工具.它支持各种浏览器,包括 Chrome,Safari,Firefox 等主流界面式浏览器,如果你在这些浏览器里面安装一个 ...

  2. 在搜索框自动输入文本_【Zotero文档翻译】管理篇:搜索

    本文翻译自Zotero文档:https://www.zotero.org/support/searching 快速搜索 快速搜索能够让您快速在库中或分类中找到所需条目. 运行快速搜索 快速搜索的操作十 ...

  3. w7系统计算机搜索无法搜索了,win7系统在搜索框中输入文字后无法搜索的详细教程...

    win7系统使用久了,好多网友反馈说win7系统在搜索框中输入文字后无法搜索的问题,非常不方便.有什么办法可以永久解决win7系统在搜索框中输入文字后无法搜索的问题,面对win7系统在搜索框中输入文字 ...

  4. 在百度或者淘宝搜索时,每次输入字符串都会出现搜索建议,例如输入北京,在搜索输入框下面会以北京为前缀,展示北京爱情故事,北京公交,北京医院等搜索词,实现这类技术所采用的数据结构是什么

    在百度或者淘宝搜索时,每次输入字符串都会出现搜索建议,例如输入"北京",在搜索输入框下面会以北京为前缀,展示"北京爱情故事","北京公交", ...

  5. 使用 Powerapps 过程中解决过的问题 - 4 - 根据在搜索框中输入文本自动对数据源中不同的字段进行过滤和显示

    在"解析Power  Apps 自动生成的App - 2 - 浏览页面" 一文里, 有涉及到类似的问题.在自动生成的App 的浏览页面里,默认的为搜索框提供了下面的代码段: Ite ...

  6. javascript弹出浏览器的三种提示框:提示信息框、确认框、输入文本框

    浏览器的三种提示框: alert()提示信息框 confirm()提示确认框 prompt()提示输入文本框 1.alert()提示信息框 效果: 实现代码: <script>alert( ...

  7. JavaScript实现弹出浏览器的三种提示框:提示信息框、确认框和输入文本框

    浏览器的三种提示框 1.alert()提示信息框 2.confirm()提示确认框 3.prompt()提示输入文本框 1.alert()提示信息框 效果图: 实现代码: <script> ...

  8. php创建输入文本框,Asp:文本框与输入文本(PHP开发人员学习ASP)

    What is the advantage to using an over using a standard ? >您可以在代码隐藏页面中更容易地引用文本框 >注意,您可以通过在控件中使 ...

  9. javascript html 文本框插入文本,javascript – 在文本框中输入文本

    演示: jsFiddle HTML: nelson justin JS: function selectedItemChange(sel) { document.getElementById('tes ...

最新文章

  1. 原生js实现ajax的文件异步提交功能、图片预览功能.实例
  2. linux C非阻塞延时,linux 非阻塞式socket编程求助。。
  3. DOS攻击之详解--转载
  4. thinkphp一句话疑难解决笔记
  5. 三十、详测 Generics Collections: TObjectList、TObjectQueue、TObjectStack
  6. GIT上传下载报错:[You do not have permission to pull from the repository]的解决方案!
  7. 24点游戏python编程代码和运行结果_编程实现24点游戏,我发现自己总是输是有原因的...
  8. mysql basedao_JDBC之BaseDao类
  9. centos7查看路由的命令_centos7系统设置***客户端及查看设置路由表router
  10. 为什么在Android上的某些设备上使用相机意图捕获的图像会被旋转?
  11. js获取当前屏幕宽度方法
  12. gopup是疫情经济生活搜索指数数据接口
  13. 【JavaScript】多行文本省略,并且判断是否需要省略。
  14. android 蓝牙打印和网络打印
  15. Java枚举的打印_如何在java中打印所有枚举值?
  16. 利用Python从字幕网上下载自己所需要的字幕(热门电影、美剧等)
  17. Java进阶(八)Stream、异常体系
  18. 减速机的漏油原因及快速维修方法
  19. UE4 虚幻发光材质避免黑色渐变
  20. 华硕笔记本电脑开机进入bios

热门文章

  1. 如何把SAP WebIDE里的Web项目同Github仓库连接起来
  2. SAP Fiori element框架smart control运行时的生成原理
  3. 已知ABAP tcode,需要查找assign了该tcode的PFCG role
  4. jQuery.each() 和原生JS的for loop效率对比
  5. 采访问题 What is your role at XX and what are your responsibilities
  6. 来自Yang Terry的关于SAP CRM One Order事件回调机制的分享
  7. SAP CRM Product ACE check调试
  8. 5分钟部署一个Hello World Servlet到CloudFoundry
  9. python加密解密库openssl_OpenSSL和Python实现RSA Key公钥加密私钥解密
  10. java中的与或非_与或非 · java development · 看云