![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 66
迷途的少年
君子不器
展开
-
pytest结合allure-pytest插件生成测试报告
pytest结合allure-pytest插件生成测试报告原创 2024-07-25 16:58:32 · 370 阅读 · 0 评论 -
pip 和pip3区别
python 有python2和python3的区别那么pip也有pip和pip3的区别大概是这样的1、pip是python的包管理工具,pip和pip3版本不同,都位于Scripts\目录下:2、如果系统中只安装了Python2,那么就只能使用pip。3、如果系统中只安装了Python3,那么既可以使用pip也可以使用pip3,二者是等价的。4、如果系统中同时安装了Python2和Python3,则pip默认给Python2用,pip3指定给Python3用。5、重要:虚拟环境中,若只存在一转载 2020-05-11 20:14:22 · 10535 阅读 · 0 评论 -
理解Python装饰器(Decorator)
理解Python装饰器(Decorator)Python装饰器看起来类似Java中的注解,然鹅和注解并不相同,不过同样能够实现面向切面编程。想要理解Python中的装饰器,不得不先理解闭包(closure)这一概念。闭包看看维基百科中的解释:在计算机科学中,闭包(英语:Closure),又称词法闭包(Lexical Closure)或函数闭包(function closure...转载 2020-03-24 11:25:28 · 168 阅读 · 0 评论 -
python面向对象
面向对象技术简介类(Class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 方法:类中定义的函数。 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。 数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数据。 方法重写:如果从父类继承的方法不能满足子类的需求,...转载 2020-03-20 16:53:38 · 123 阅读 · 0 评论 -
史上最全!Selenium元素定位的30种方式
Selenium对网页的控制是基于各种前端元素的,在使用过程中,对于元素的定位是基础,只有准去抓取到对应元素才能进行后续...转载 2020-02-26 10:42:57 · 1358 阅读 · 0 评论 -
Python面向对象之私有属性和方法
Python面向对象之私有属性和方法私有属性与私有方法应用场景在实际开发中,对象的某些属性或者方法 可能只希望在对象的内部被使用,而不希望在外部被访问到; 私有属性 就是对象不希望公开的属性; 私有方法 就是对象不希望公开的方法;定义方式在定义属性或者方法时,在属性名或者方法名前面增加两个下划线,定义的就是私有属性或方法;没使用私有属性前class Women:...转载 2019-11-21 15:23:31 · 201 阅读 · 0 评论 -
cookie和session的区别与联系
参见:https://blog.csdn.net/duan1078774504/article/details/51912868 首先我们需要了解session和cookie机制Cookie是浏览器支持的存储方式,类似于python中的dict,拥有Key和Valuehttp协议:无状态的协...转载 2019-07-18 14:24:23 · 105 阅读 · 0 评论 -
自动化测试使用cookie跳过验证码
准备工具:fiddlerPython+selenium安装fidderfidder官方下载地址fidder首次安装需要设置...转载 2019-07-18 09:35:27 · 376 阅读 · 0 评论 -
python编程中遇到的错误
错误:AssertionError: group argument must be None for now问题:将__init__()写错,写成__int__()了原创 2019-07-03 16:39:56 · 258 阅读 · 0 评论 -
python执行selenium报错
python执行selenium报错信息:Traceback (most recent call last): File "C:/Users/yuhao/PycharmProjects/untitled/selenium/selenium_first.py", line 13, in <module> driver.get('www.baidu.com') Fi...原创 2019-06-27 22:18:41 · 3536 阅读 · 0 评论 -
selenium上传附件的两种方式(普通上传和借助AutoIt识别Windows上传窗口)
首先:下载AutoIt并安装,下载 官方网站:https://www.autoitscript.com/site/原文:http://www.cnblogs.com/fnng/p/4188162.html  ...转载 2019-06-25 19:58:10 · 659 阅读 · 0 评论 -
使用python将android指定app的日志输出到文件中
注意:本文使用的是python3 ,因为编码的原因选择了python3.因为Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码;Python3的 默认编码 为Unicode,可以识别中文字符import subprocessdef log(filename='c:\\log.txt'): # 以append形式打开(创建)文件 fi...原创 2019-06-18 20:06:19 · 1174 阅读 · 0 评论 -
selenium定位隐藏元素
1.输入框不点击的时候,选项框时隐藏的2.点击输入框后,选项框显示问题:如何定位隐藏元素???通过编写js代码更改隐藏元素的display属性,然后执行即可,详见代码 #选择批次年 #将隐藏元素设置为可见 driver.execute_script("document.getElementsByClassName('e...原创 2019-05-28 10:37:33 · 5545 阅读 · 0 评论 -
pycharm安装pytesseract报错Non-zero exit code (1)
pycharm安装pytesseract报错Non-zero exit code (1)解决:更新pip,命令如下:python -m pip install --upgrade pip更新后安装仍然报错:解决:参考博客:https://zhidao.baidu.com/question/1738175020509032387.html由于pip 10版本中没有main()...原创 2019-07-18 19:26:48 · 3073 阅读 · 0 评论 -
tesseract 安装及使用
1. 安装tesseractOCR,即Optical Character Recognition,光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程。对于图形验证码来说,它们都是一些不规则的字符,这些字符确实是由字符稍加扭曲变换得到的内容。tesseract下载地址:https://d...转载 2019-07-19 09:00:23 · 485 阅读 · 0 评论 -
selenium截屏保存、截取特定区域的图片
from PIL import Imageimport pytesseractfrom selenium import webdriver# text = pytesseract.image_to_string(Image.open(r'C:\Users\windows7\Desktop\3.png'))# print(text)driver = webdriver.Chrome(...原创 2019-07-19 15:41:03 · 2777 阅读 · 0 评论 -
Python3中yield理解与使用
Python3中yield对初学者一直是一个难点存在,网上很多教程,噼里啪啦写了很多,也举了很多例子,但是读完之后还是不知所以然,下面...转载 2019-08-13 15:20:28 · 248 阅读 · 0 评论 -
python3面向对象(3)私有属性和方法以及访问私有属性和方法的方式
python3中的私有属性和方法是以__两个下划线开头的:class People():#定义一个类 def __init__(self, name, age): self.name = name#公有属性 self.__age = age#私有属性 def __money(self):#私有方法 print('我不告诉你我多...原创 2019-08-14 17:32:41 · 451 阅读 · 0 评论 -
python3-函数的参数的四种简单用法
'''1.默认参数2.关键字参数3.非固定参数4.局部变量'''#默认参数def student(name, age, sex, address): print(name, age, sex, address)#关键字参数----关键参数必须放在默认参数之后def student2(name, age, address, sex='男'): print(...原创 2019-08-19 19:55:04 · 158 阅读 · 0 评论 -
python3的私有属性和继承
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 ...转载 2019-08-14 20:06:03 · 302 阅读 · 0 评论 -
Python中使用PyCharm为函数参数增加注释
1.在函数名中键入数遍光标,左上角亮起小灯泡,点击小灯泡2.选中 Insert documentation strign stub3.设置后效果展示4.在"""后添加函数注释,以及参数注释然后再引用函数时,选中函数,Ctrl q 即可显示函数以及参数的注释了...原创 2019-08-21 17:05:12 · 8601 阅读 · 1 评论 -
unittest框架如何将上个接口的返回结果给下个接口适用
问题:如何将上个接口的返回结果,作为下个接口的请求入参?使用unittest框架写用例时,如何将用例a的结果,给用例b使用。unittest框架的每个用例都是独立的,测试数据共享的话,需设置全局变量,可以使用globals()函数来解决globals()函数globals() 函数会以字典类型返回当前位置的全部全局变量。print(globals())#用法globals()...原创 2019-09-24 20:22:20 · 1407 阅读 · 0 评论 -
Python包的相对导入时出现错误的解决方法
在练习Python中package的相对导入时,即from . import XXX 或者 from .. import XXX 时会遇到这样两个错误:SystemError: Parent module '' not loaded, cannot perform relative import 和ValueError: attempted relativ...转载 2019-10-09 15:36:27 · 331 阅读 · 0 评论 -
Selenium无法定位元素的九种解决方案
一、frame/iframe表单嵌套WebDriver只能在一个页面上对元素识别与定位,对于frame/iframe表单内嵌的页面元素无法直接定位。解决方法:driver.switch_to.frame(id/name/obj)。switch_to.frame()默认可以直接取表单的id或name属性。如果没有可用的id和name属性,可以先定位到frame/iframe,再将定位对象传给s...原创 2019-05-28 09:00:54 · 19494 阅读 · 6 评论 -
selenium get_attribute的几种用法
获取元素标签的内容:get_attribute(‘textContent’)会获取图内的"文章管理"文字获取元素内的全部HTML:get_attribute('innerHTML')获取包含选中元素的HTML:get_attribute('outerHTML') ...转载 2019-05-22 18:00:04 · 3572 阅读 · 0 评论 -
【WebDriver】解决ElementNotVisibleException方法总结
1、首先排除是否是页面未加载完成的问题。页面响应时间比较慢,导致定位的元素还没加载出来,就会报错ElementNotVisible,这时可以在代码里加上一定的等待时间,如:Thread.sleep(3000) 。2、其次排除是否是定位有问题,可以用chrome浏览...转载 2019-05-22 17:56:54 · 242 阅读 · 0 评论 -
实现远程连接appium server
如何通过本地的代码,调用远程的server呢?例如:我有两台电脑A(192.168.112.10)和B(192.168.112.11),那我怎么能在A执行本地脚本,但是使用B上的server呢?查看appium连接appium服务并开启一个session的例子如下:desired_caps = {} desired_caps['platformName'] = 'A...原创 2019-03-26 10:20:30 · 1912 阅读 · 2 评论 -
python编程中的if __name__ == 'main': 的作用和原理
在大多数编排得好一点的脚本或者程序里面都有这段if __name__ == 'main': ,虽然一直知道他的作用,但是一直比较模糊,收集资料详细理解之后与打架分享。 1、这段代码的功能 一个python的文件有两种使用的方法,第一是直接作为脚本执行,第二是import到其他的python脚本中被调用(模块重用)执行。因此if __name__ == 'main': 的作用就是控制...原创 2019-03-06 15:57:19 · 152 阅读 · 0 评论 -
pycharm社区版安装django并创建一个简单项目
1.使用pip install django==2.1.5命令安装django安装完成后,通过以下方式查看是否安装成功也可通过pycharm查看File->setting->project interpreter2.配置环境变量path后加;C:\python35\Lib\site-packages\django\bin,注意英文状态下的;3.创建项...原创 2019-01-16 18:01:02 · 4316 阅读 · 1 评论 -
PyInstaller将python程序为.exe文件
一、PyInstaller安装1.官网下载:http://www.pyinstaller.org/downloads.html2.下载完成后,解压到想安装的目录,如C:\pyinstaller进入cmd,切换到解压目录C:\pyinstaller执行python setup.py install 安装完成后,将解压路径添加到环境变量中 执行命令pyins...原创 2019-01-11 14:51:17 · 135 阅读 · 0 评论 -
python+Appium 中的 Desired Capabilities
Desired Capabilities 是由 keys 和 values 组成的 JSON 对象。举个简单例子:{ "platformName": "Android", "deviceName": "4684d81d", "platformVersion": "8.1.0", "appPackage": "app包名",原创 2018-12-22 18:17:06 · 718 阅读 · 0 评论 -
python3中的re模块
正则表达式是一个很强大的字符串处理工具,它能帮助我们方便的检查一个字符串是否与某种模式匹配。一、python中正则表达式的基本语法规则序号 语法 解释 表达式 成功匹配对象1 一般字符 匹配自身相对应的字符 abc abc2 . 匹配除换行符(\n)以外的任意字符 a.c abc3 \ 转义字符,可以改...原创 2018-12-10 10:44:29 · 1506 阅读 · 0 评论 -
python3安装scrapy
系统:window7python版本:3.5.0一、Scrapy简介Scrapy,Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。Scrapy吸引人的地方在于它是一个框架,任何人都可以根据需求方便的修改。它也提供了多种类型爬虫的基类,如BaseSpider、si...原创 2018-12-13 13:46:27 · 196 阅读 · 0 评论 -
selenium滚动条操作
#不滑动滚动条也可以定位到元素定位页面的最后一条代码如下:from selenium import webdriverfrom time import sleepdriver = webdriver.Chrome()# driver = webdriver.Firefox()---改变浏览器显示大小,没有滚动条没法滚动driver.get("https://www.baidu...原创 2018-10-10 19:36:16 · 4720 阅读 · 0 评论 -
selenium之WebDriverWait
之前有篇文章介绍过Selenium的等待知识,可惜当时水平有限,只介绍了sleep和implicitly_wait的用法。今天还是补充一下WebDriverWait的知识吧。一、webdrivewait 示例代码from selenium import webdriverfrom selenium.webdriver.support...转载 2018-10-09 20:28:55 · 12187 阅读 · 2 评论 -
selenium之 文件上传所有方法整理总结
版权声明:本文为博主原创文章,转载请声明出处并添加原文链接。 https://blog.csdn.net/huilan_same/article/details/52439546 更多关于python selenium的文章,请关注我的专栏:Python Se...转载 2018-10-18 14:34:00 · 222 阅读 · 0 评论 -
python+unittest 控制用例的执行顺序
unittest的main()方法执行用例的顺序是按照测试类、测试方法的名字的ASCII顺序来执行测试方法。所以可能执行的顺序和你想要的顺序不一样,可能通过下面两种方法修改执行顺序1、 通过TestSuite按照顺序依次添加想要执行的方法suite = unittest.TestSuite()suite.addTest(Test("test_operator_add"))suite...转载 2019-04-28 16:33:46 · 1506 阅读 · 0 评论 -
appium+python自动化-长按(long_press)
前言长按操作是经常会遇到的场景,通过driver可以直接调出long_press_keycode方法,但是这个方法是长按手机上某个按钮,比如长按电源键,长按home键。长按某个元素或者长按屏幕上某个点,就需要用到TouchAction里面提供的long_press操作了定位ListView1.先看看哪些场景是ListView2.像这种listview里面每行记录的id都是一样...转载 2019-04-28 20:01:38 · 1403 阅读 · 0 评论 -
appium使用execute_script()执行本机移动命令
参考文档:http://appium.io/docs/en/commands/mobile-command/使用WebDriverAgent / XCTest后端自动化iOS移动手势:http://appium.io/docs/en/writing-running-appium/ios/ios-xctest-mobile-gestures/index.html#mobile-swipe...原创 2019-05-13 14:37:53 · 2800 阅读 · 0 评论 -
ddt数据驱动
所谓数据驱动测试,简单的理解为数据的改变从而驱动自动化测试的执行,最终引起测试结果的改变。通过使用数据驱动测试的方法,可以在需要验证多组数据测试场景中,使用外部数据源实现对输入输...转载 2019-05-21 11:21:59 · 801 阅读 · 0 评论