当前位置: 首页 > news >正文

selenium+pytest自动化测试框架FAQ

欢迎进行接口(httprunner)、UI自动化(pytest)交流,博主微信:jiaotengfei1016

文章目录

  • 通过百度、CSDN都解决不了的问题,怎么办?
  • 问题1:pycharm中的venv、external liarbries是干啥的?
  • 问题2:时间的库待总结
  • 问题3:python执行代码的方式?
  • 问题4:列表的内容必须保存在变量中,才能被print
  • 问题5:数据类型,字符串、数字、数字类型等是啥关系
  • 问题6:Make sure that you use the correct version of 'pip' installed,pip版本不对
  • 问题7:发现导入的import是灰色的,
  • 问题8:读取excel的时候报错,
  • 问题9:库、模块、类、方法、函数之间的关系?
  • 问题10:python的命名规范?
  • 问题11:发现类竟然提示多余的括号,
  • 问题12:try except ,except有下划波浪线?
  • 问题13:为什么看源码?因为csdn一个人一个理解,你花了8小时发现你最终理解的是错的,被人误导了!!!
  • 问题14:logging模块网上攻略非常多,存在很多误导人的地方,白白浪费了很多时间?
  • 问题15:日志模块上周一直没调通,原因是:我添加了移除处理器==self.logger.removeHandler()
  • 问题16:“pytest -vs test_2.py -n 2”执行后报错:pytest: error: unrecognized arguments: -n 2
  • 问题17:test_2.py执行用例过程中,发现pytest插件报错:PytestAssertRewriteWarning: Module already imported so cannot be rewritten
  • 问题18:Terminal栏目输入:pytest -vs test_2.py -k 'ao' 报错,执行失败
  • 问题19:pytest在用例层跑单个test,结果跑了所有test用例
  • 问题20:今天封装了类:wait_select(self, value, *args),结果调用时候一直出问题?
  • 问题21:日志封装了中文,单线程执行了4个用例,控制台输出ok,分布式跑起来,控制台显示乱码,但还是跑完了。
  • 问题22:关于pycharm、pytest用例代码,没有提示、无法关联方法的问题?
  • 问题23:selenium 绘制多边形,需要用到画布
  • 问题24:解决Python代码编码问题 SyntaxError: Non-UTF-8 code starting with '\xc1'
  • 问题25:如何快速翻译谷歌浏览器的英文?
  • 问题26:如何重启jenkins?
  • 问题27:你下载的第三方库在哪里?如果你想看代码的话
  • 问题28:如何快速的输入if __name__ == '__main__':
  • 问题29:电脑的第三方库?
  • 问题30:什么是约定大于配置?
  • 问题31:哈希算法是什么?
  • 问题32:pycharm使用文档注释定义参数类型?


通过百度、CSDN都解决不了的问题,怎么办?

【解题的思路是关键,不然浪费时间精力】
(1)先自己百度,没百度到,只有一个解释,就是你输入的关键字不对。(你要相信,你碰到的问题,肯定有人碰到过且分享了)
(2)录制selnium IDE;
(3)查看报错的源码;
(4)请教python大佬;
(5)晚上回去后把问题记录下来,补充技术薄弱点,输出csdn总结**

问题1:pycharm中的venv、external liarbries是干啥的?

venv就是你封装到这里的函数,只会影响到你这个项目functions为封装的常用基本函数
e l 是外部库,具体没理解,

问题2:时间的库待总结

from datatime import datatime,data,timedelta
def date_n(n):
return str((date.today() + timedelta(days = +int(n))).strftime("%Y-%m-%d"))

问题3:python执行代码的方式?

# 实例化类后,run才有结果。意思就是给你定义的函数赋值后,你右键run,代码才会跑起来。
if __name__ == '__main__':
    search_tickets("上海","杭州",1)

问题4:列表的内容必须保存在变量中,才能被print

# readlines() 快速一次性读读取文本内容,并将结果存储在列表中。
f = open('D:\\ui_date\\test_01.txt','r')
# print(type(f.readlines()))
txt = f.readlines()
print(txt)

问题5:数据类型,字符串、数字、数字类型等是啥关系

解决办法:(待复习)字符串、列表、字典、循环、函数、类,写着写着,突然觉得有必要把python基础再给整理一遍了,,,
数字:整数、浮点数、str()

问题6:Make sure that you use the correct version of ‘pip’ installed,pip版本不对

解决办法:
(1)根因:多装了一个urllib3,删掉就好了
(2)第二次碰到:pip install xlwt能安装,pycharm安装失败提示版本不能安装,
解决办法:替换下载的源头网址,setting->Project ->Python interpreterh>+> Manage Repositories>https://mirrors.aliyun.com/pypi/simple/,删掉原来的。
自带的不靠谱,后分析win能下载的原因是win搜索的源可用,pycharm自带的链接源不可用

问题7:发现导入的import是灰色的,

解决办法:点击灰色代码,提示optimize imports(优化imports),选择其中的 Suppress for statement,亮了
原理:为无法使用的导入声明添加了内容为“# noinspection PyUnresolvedReferences”的注释,其作用是:让PyCharm 在代码检查时人为跳过某些特定部分的代码检查。

问题8:读取excel的时候报错,

解决办法:把文件另存为*.xls

问题9:库、模块、类、方法、函数之间的关系?

函数、方法:就是def () 定义的内容,实现了一个功能,方便我们调用。方法是一种特殊的函数
类:class name() 下面包含了很多我们定义的函数def ()
模块:一个*.py的文件
库:selenium库,UI自动化的API的集合。

问题10:python的命名规范?

命名规范

问题11:发现类竟然提示多余的括号,

难道是私有属性的类,如果没有给类参数,那么就可以移除()吗

问题12:try except ,except有下划波浪线?

原因是在pycharm中我没有加具体的报错信息。忽视掉

问题13:为什么看源码?因为csdn一个人一个理解,你花了8小时发现你最终理解的是错的,被人误导了!!!

不会的,先在网上搜详解,然后看源码,看源码,必须看源码!

问题14:logging模块网上攻略非常多,存在很多误导人的地方,白白浪费了很多时间?

先简单查下,10分钟,如果没有满足的,强烈建议直接去bilbil的app,里面资源真多。

问题15:日志模块上周一直没调通,原因是:我添加了移除处理器==self.logger.removeHandler()

问题16:“pytest -vs test_2.py -n 2”执行后报错:pytest: error: unrecognized arguments: -n 2

根因:import xdist,我没有安装分布式执行用例的插件。

问题17:test_2.py执行用例过程中,发现pytest插件报错:PytestAssertRewriteWarning: Module already imported so cannot be rewritten

根因:反正插件对pytest的跨目录执行用例会有所影响。所以最好单独出来一个文件,只导入pytest,执行用例。

问题18:Terminal栏目输入:pytest -vs test_2.py -k ‘ao’ 报错,执行失败

根因:提示字符串必须是“”,单引号会失败

问题19:pytest在用例层跑单个test,结果跑了所有test用例

系统默认跑的是该文件的所有test,单独拿出一个文件比如suit.py,这个文件里可以执行对应py文件的单个test

问题20:今天封装了类:wait_select(self, value, *args),结果调用时候一直出问题?

根因:自己封装的类,函数没搞清楚,总共三个函数,最后两个形参中的By.Id没有“”,我带了,报什么错来着,说是入参有问题。

问题21:日志封装了中文,单线程执行了4个用例,控制台输出ok,分布式跑起来,控制台显示乱码,但还是跑完了。

根因:分布式应该不识别中文吧,可改变项目编码为国标:File->Settings->Editor->File encoding>>>GBK

问题22:关于pycharm、pytest用例代码,没有提示、无法关联方法的问题?

2月25日,记录一个坑了我两天的bug。开始写用例,当用例方法继承了被标记的函数后,这个函数封装了业务操作、基础操作,其中业务操作继承了 基础操作的类。所以可以直接调用我自己定义的各种封装。问题是:这里突然就不自动关联方法了,而且奇怪的是还能执行,卧槽了!!!那我怎么写用例啊,百度了2天,问了无数老铁,最终的办法是:删掉了项目自己生成的缓存文件,然后再去用用例,关联成功。有些问题百度都搜不到,,,哎

问题23:selenium 绘制多边形,需要用到画布

selenium系列中有专门说到如何处理

问题24:解决Python代码编码问题 SyntaxError: Non-UTF-8 code starting with ‘\xc1’

解决办法:https://blog.csdn.net/wyb_hardworking/article/details/19562971

问题25:如何快速翻译谷歌浏览器的英文?

解决:页面右键选择,翻译成中文。如此简单

问题26:如何重启jenkins?

解决:localhost:8080/restart

问题27:你下载的第三方库在哪里?如果你想看代码的话

项目路径,下的lib中的sitepackgaes中,D:\interface_project\venv\Lib\site-packages\requests
如果你是下载到了python里面,name就在python目录的lib中

问题28:如何快速的输入if name == ‘main’:

解决:直接输入main+enter键

问题29:电脑的第三方库?

更新到最新版本:pip install --upgrade pytest
更新到指定版本:pip install pytest==5.4.2

问题30:什么是约定大于配置?

通俗的说:你按照我跟你约定的去操作就可以了,不需要你自己配置其他什么。

问题31:哈希算法是什么?

如果要你组织那一万首歌,一个简单的哈希算法就是让歌曲所占硬盘的字节数作为哈希码。这样的话,你可以让一万首歌“按照大小排序”,然后遇到一首新的歌,只要看看新的歌的字节数是否和已有的一万首歌中的某一首的字节数相同,就知道新的歌是否在那一万首歌之内了。

问题32:pycharm使用文档注释定义参数类型?

解决:直接按照提示处理即可,这个主要是定义一个参数类型就行。不深

相关文章:

  • python与selenium_项目篇_数据驱动测试
  • python与selenium_项目篇_page object设计模式(项目框架)
  • python与selenium_项目篇_行为驱动测试(BDD)
  • git相关(安装、配置、拉取提交代码)
  • python与selenium_平台篇_docker容器技术与多线程测试
  • python_类and对象
  • 记录我定位了2天的bug,坚持下去,问题终究会解决。
  • python_函数_参数(args、*args、**kwargs)
  • python与selenium_强制等待、隐性等待、显性等待
  • python_日志相关
  • jenkins总结1 - 安装、git、allure、email插件配置
  • pytest框架_简介、pytest.main()
  • pytest框架_@pytest.fixture()
  • pytest框架_@pytest.mark.usefixtures()
  • pytest框架_conftest.py详解
  • [译]CSS 居中(Center)方法大合集
  • Docker入门(二) - Dockerfile
  • HTML5新特性总结
  • Rancher-k8s加速安装文档
  • ViewService——一种保证客户端与服务端同步的方法
  • 机器学习中为什么要做归一化normalization
  • 基于组件的设计工作流与界面抽象
  • 简单基于spring的redis配置(单机和集群模式)
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 通过git安装npm私有模块
  • 物联网链路协议
  • 由插件封装引出的一丢丢思考
  • PostgreSQL 快速给指定表每个字段创建索引 - 1
  • ​MySQL主从复制一致性检测
  • ​力扣解法汇总946-验证栈序列
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • (07)Hive——窗口函数详解
  • (2)nginx 安装、启停
  • (7)STL算法之交换赋值
  • (Java实习生)每日10道面试题打卡——JavaWeb篇
  • (TOJ2804)Even? Odd?
  • (附源码)php投票系统 毕业设计 121500
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (免费领源码)Java#Springboot#mysql农产品销售管理系统47627-计算机毕业设计项目选题推荐
  • (一)appium-desktop定位元素原理
  • (一)kafka实战——kafka源码编译启动
  • (转)甲方乙方——赵民谈找工作
  • *Django中的Ajax 纯js的书写样式1
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET/C# 使窗口永不获得焦点
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)...
  • .Net转前端开发-启航篇,如何定制博客园主题
  • [ vulhub漏洞复现篇 ] Apache Flink目录遍历(CVE-2020-17519)
  • [23] 4K4D: Real-Time 4D View Synthesis at 4K Resolution
  • [AHOI2009]中国象棋 DP,递推,组合数
  • [C++]18:set和map的使用
  • [CLR via C#]11. 事件
  • [emacs] CUA的矩形块操作很给力啊