在写一个android手机的自动化测试,用appium+python3,跟室友讨论拟定了一个框架,在写2个通用的简单模块时,遇到问题.

同一个目录下2个模块,driver.py(用于获取app 句柄) 引用 read_conf.py (用于读取配置文件,如appium连接手机时需要的desired_capability),read_conf.py 里面要传递保存desired_capability的配置文件,直接执行read_conf.py没问题,但是在driver.py调用read_conf.py就说找不到section,其实是找不到配置文件,因为路径不对:

pycharm :ctrl+shift+F10 运行driver.py

pycharm :ctrl+shift+F10 运行read_conf.py

后来修改了read_conf.py 模块中获取配置文件路径的方式.就可以了.

事实上,用下图的方法是比较好,这就设计到获取当前文件路径的2个方法的区别:os.path.dirname(os.path.realpath(file)) 和 os.getcwd()的区别:

https://blog.csdn.net/xiaofei0859/article/details/51305218

os.getcwd()获取的当前最外层调用的脚本路径,即getPath所在的目录也可描述为起始的执行目录,A调用B,起始的是A,那么获取的就是A所在的目录路径。

os.path.dirname(os,path.realname(file)):指的是,获得你刚才所引用的模块 所在的绝对路径,__file__为内置属性。

其实我最主要的问题是因为:driver.py本来是在另外的目录创建并运行过,后来直接拖动到common目录,导致getcwd()看到的目录是指调用的目录,跟实际文件存在的目录不一样.为了避免这种情况,当你确切想要的是文件放的目录,那么请用os.path.realpath()

最新文章

  1. 微信第三方平台定时接收component_verify_ticket
  2. 《java编程思想》读书笔记 暂停一段时间,改为上面的练习题
  3. andriod 动态设置TextView 和 RelativeLayou 高度
  4. java io读书笔记(2)什么是stream
  5. ElastciSearch常用APi
  6. HDU 2157 - How many ways??
  7. 类是公共,它应该被命名为.java文件声明
  8. JS基础——入门必备
  9. mysql 使用正则表达式查询
  10. [CTSC2010]珠宝商 SAM+后缀树+点分治
  11. 几个js框架
  12. 获取从库Seconds_Behind_Master监控主从同步
  13. openwrt支持哪些c库?
  14. 深入聊聊Java多线程
  15. msp430学习笔记-IO及低功耗
  16. Deep Residual Learning for Image Recognition(残差网络)
  17. 20145326 《Java程序设计》第6周学习总结
  18. python 3.x 爬虫基础---Requersts,BeautifulSoup4(bs4)
  19. 点滴积累【C#】---抓取页面中想要的数据
  20. C语言条件运算符

热门文章

  1. i春秋破译
  2. 修改Listen 1源码的一点心得
  3. 3. qtdesinger的使用方法
  4. orcl between and 时间
  5. 第二十五节:scrapy爬虫识别验证码(四)手绘验证码识别
  6. JavaEE Day04 MySQL多表&事务
  7. 【每日一题】【栈和队列、双端队列】20. 有效的括号/NC52 有效括号序列-211127/220126
  8. L1-049 天梯赛座位分配 (20分)
  9. docker部署项目
  10. LeetCode-02 两数相加(Add Two Numbers)