selenium python bindings 项目结构总结
一个合理的文档结构在import的过程中会避免很多错误,踩完坑来记录。
webtests/ framework.py webdriver.py test_file.py module/ __init__.py PageObjects/
__init__.py
all_pages.py object.py
上面这个丑丑的就是修改完后比较合理正确的一个文档结构。
说明:
1. 以test_开头命名所有的testcase文件
2. 抽出公共的方法到framework中
3. webdriver 中要声明执行的testcase的位置
4. module中的__init__.py 文件们。这些init文件有的是包含了你所要import的内容,有的只是空。这是出自python的定义,为了指示这是一个module,可以从这里面import你所需要的类,在module的各级目录里都添加了init的文件
The __init__.py files are required to make Python treat the directories as containing packages; this is done to prevent directories with a common name, such as string, from unintentionally hiding valid modules that occur later on the module search path. In the simplest case, __init__.py can just be an empty file, but it can also execute initialization code for the package or set the __all__ variable, described later.
5. object.py中的内容是一个页面的页面元素抽象以及页面通用方法
6. all_pages.py可以在framework中被import,这个文件中是import了所有的object.py文件中的类
最新文章
- iOS开发中如何使自定义方法具有XCode插件使用提示
- javascript,jquery代码规范
- 转:如何学习SQL(第四部分:DBMS扩展功能与SQL高级话题)
- OnClientClick=";return confirm('确定要删除吗?')";
- QTableView带可编辑进度条
- Hive QL
- 【转】C,C++中使用可变参数
- Struts2、spring2、hibernate3在SSH中各起什么作用
- 空连接ipc$入侵
- hadoop环境搭建之关于NAT模式静态IP的设置 ---VMware12+CentOs7
- JAVA PERSISTENCE API (JPA)
- MySQL SET数据类型
- mysqldump备份表中有大字段失败的排错过程
- Unityd外发光Shader Lab
- UIImageView - BNR
- cocos开发插件笔记
- 一、Ansible安装
- AOP 入门
- electron 项目的搭建方式,借助 node 和 npm
- nginx 哈希表数据结构
热门文章
- 解决Google Chrome浏览器字体模糊的问题
- vue之自定义插件
- PHPExcel导出数据量过大处理
- 阿里巴巴IPv6应用平台引领下一代互联网
- JS中 reduce() 的用法
- pandas 使用dataframe 索引项相同时出现bug
- Jsoup 学习笔记
- subId、slotId、SubscriptionInfo和SubscriptionManager的解释及关系说明
- ECMAScript1.4 对象 | 简单数据类型与复杂数据类型 | 内置对象 | 基本包装类型 | String
- MyBatis中使用RowBounds对查询结果集进行分页