![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
selenium2+python
lxting21
这个作者很懒,什么都没留下…
展开
-
[转]pycharm的一些快捷键
最近在用pycharm时候,比如调试、注释有时觉得麻烦,看有没有类似vs一样的快捷键,找了一些资料,(地址:http://www.2cto.com/os/201410/341542.html)仅供参考。编辑类:Ctrl + Space 基本的代码完成(类、方法、属性)Ctrl + Alt + Space 类名完成Ctrl + Shift + Enter 语句完成Ctrl + P 参数信息(在方法中...转载 2018-05-31 09:43:34 · 241 阅读 · 0 评论 -
30.七-用例执行的顺序
'unittest 框架默认根据ASCII码的顺序加载测试用例'import unittestclass TestBdd(unittest.TestCase): def setUp(self): print("test TestBdd:") def test_ccc(self): print("test ccc")原创 2017-05-24 13:41:38 · 614 阅读 · 0 评论 -
28.七-27拆分的runtest
import unittest#加载测试文件#import test_add#import testsub#构造测试集#suite=unittest.TestSuite()#suite.addTest(test_add.TestAdd("test_add"))#suite.addTest(test_add.TestAdd("test_add2"))原创 2017-05-24 10:01:43 · 495 阅读 · 0 评论 -
26.七-27拆分的testadd
from calculator import Countimport unittestclass TestAdd(unittest.TestCase): def setUp(self): print("test case start") def tearDown(self): print("test case end") def tes原创 2017-05-23 17:30:04 · 341 阅读 · 0 评论 -
29.七-27拆分的testsub
from calculator import Countimport unittestclass TestSub(unittest.TestCase): def setUp(self): print("test case start") def tearDown(self): print("test case end")原创 2017-05-24 11:34:33 · 382 阅读 · 0 评论 -
27.七-封装测试类setUp和tearDown
from calculator import Countimport unittest'创建MyTest()类的好处显而易见,对于测试类和测试方法来说,应将注意力放在具体的用例编写上,''无须关心setUp()和tearDown()所做的事情。前提是setUp()和tearDown()所做的事情是每个用例都需要的'class MyTest(unittest.TestCase ):原创 2017-05-24 09:51:40 · 903 阅读 · 0 评论 -
25.七-计算器类
class Count: def __init__(self,a,b): self.a=int(a) self.b=int(b) def add(self): return self.a+self.b def sub(self): return self.a-self.b原创 2017-05-23 17:16:50 · 302 阅读 · 0 评论 -
24.七-断言方法,判断质数
from count_zhishu import is_primeimport unittestclass Test(unittest.TestCase): def setUp(self): 'test1' #number =input("Enter a number:") #self.number=int(number)原创 2017-05-23 17:15:47 · 439 阅读 · 0 评论 -
23.七-判断质数
#用于判断质数def is_prime(n): if n return False for i in range(2,n): if n % i ==0: return False return True原创 2017-05-23 17:03:57 · 657 阅读 · 0 评论 -
31.七-执行多级目录的用例
'''1.无条件的跳过装饰的测试 ,说明跳过测试的原因unittest.skip(reason)2.跳过装饰的测试,如果条件为真时unittest.skipIf(condition,reason)3.跳过装饰的测试,除非条件为真unittest.skipUnless(condition,reason)4.测试标记为失败,不管执行结果是否失败,统一标记为失败unitt原创 2017-05-24 13:47:23 · 476 阅读 · 0 评论 -
32.七-fixtures
fixtures 可以形象的把它看作是夹心饼干外层的两片饼干,这两片饼干就是setUp/tearDown,中间的心就是测试用例。除此之外,unittest还提供了更大范围的fixtures,例如对于测试类和模块的fixtures.import unittestdef setUpModule(): print("test module start>>>>>>>>>>>")def原创 2017-05-24 14:17:38 · 292 阅读 · 0 评论 -
解决Pycharm无法导入包问题 Unresolved reference
从SVN更新下来的代码,突然导入包路径都有问题,必须加上根路径才正确,之前运行是OK的。检查了运行的环境路径,也是没有问题,最后查资料,是package的source路径设置问题。在pycharm中设置source路径file–>setting–>project:server–>project structure将放package的文件夹设置为source,这样import的模块...原创 2018-05-30 14:01:08 · 8017 阅读 · 0 评论 -
Python+Selenium获取HTML-Table表格数据
在自动化中,有时我们会遇到html表格,需要对表格添加的内容判断其正确性,那么怎么才能取得表格数据呢?1.通过selenium定位方式(id,name,xpath等方式)定位table标签定义基类base# -*- coding: utf-8 -*-from selenium.webdriver.support.wait import WebDriverWaitclass PageMeth...原创 2018-05-29 16:24:11 · 28629 阅读 · 2 评论 -
python获取当前文件路径以及父文件路径
123456#当前文件的路径pwd = os.getcwd()#当前文件的父路径father_path=os.path.abspath(os.path.dirname(pwd)+os.path.sep+".")#当前文件的前两级目录grader_father=os.path.abspath(os.path.dirname(pwd)+os.path.sep+"..")...转载 2018-05-14 14:24:50 · 19562 阅读 · 1 评论 -
python+selenium随机添加用户自动化测试脚本
from selenium import webdriverimport timeimport randomglobal userName,userPassword #为了便于使用,定义为全局变量userName = ''userPassword = ''driver = webdriver.Chrome()driver.maximize_window()driver .get(...原创 2018-04-20 14:12:20 · 2887 阅读 · 0 评论 -
selenium报错:is not clickable at point (1214, 124). Other element would receive the clickd
定位元素没有问题,但是执行脚本时候,循环第二遍时候,就报错is not clickable at point (1214, 124). Other element would receive the click。 具体错误:selenium.common.exceptions.WebDriverException: Message: unknown error: Element <...原创 2018-04-18 16:42:22 · 5790 阅读 · 1 评论 -
多个用户登录导致python出现’no module named 'selenium'异常解决
之前系统一直使用administrator账户登录,python环境搭建好之后使用正常,最近新建了个账户后,若程序中有“from selenium import webdriver”,那么久报错‘no module named 'selenium’。1.查看系统安装的selenium:pip show selenium,可以发现,selenium安装在administrator用户权限的目录下,那...原创 2018-04-17 14:15:46 · 9626 阅读 · 0 评论 -
python运行的unknown error: call function result missing 'value'
之前调试好的程序,这两天打开一直报错unknown error: call function result missing 'value',经过不断确认代码没问题之后,找到问题原因,由于自己使用的chrome版本升级,原先使用的chromedriver不匹配。这是在网上查询的浏览器与驱动匹配信息,但是已经不是最新的了我这里稍作补充V2.29 V56-58V2.30 V57-59V2.31 V...原创 2018-04-17 11:39:40 · 5835 阅读 · 0 评论 -
python的字符串切片操作
回文是一种无论从左还是从右读都一样的字符序列。比如 “madam”。在这个例子中,我们检查用户输入的字符串是否是回文,并输出结果。一:取字符串中第几个字符print "Hello"[0] 表示输出字符串中第一个字符print "Hello"[-1] 表示输出字符串中最后一个字符二:字符串分割print "Hello"[1:3]#第一个参数表示原来字符串中的下表#第二个阐述表示分割后剩下的字符串的第...原创 2018-04-16 10:29:54 · 19146 阅读 · 0 评论 -
22.七-通过unittest单元测试框架编写单元测试用例
from calculator import Countimport unittestclass TestCount(unittest.TestCase): def setup(self): print("test start") def test_add(self): j=Count(2,3) self.assert原创 2017-05-23 17:01:46 · 509 阅读 · 0 评论 -
21.七-测试两个整数相加
from calculator import Count#测试两个整数相加class TestCount: def test_add(self): try: c=Count(2,4) result=c.add() assert(result ==6),'Integer addition resul原创 2017-05-23 16:59:07 · 529 阅读 · 0 评论 -
9.Selenium2 自动化测试实战-基于Python语言-键盘事件
from selenium import webdriver#引入keys模块from selenium.webdriver.common.keys import Keysfrom time import sleepdriver=webdriver.Chrome()driver.get("http://www.baidu.com")#输入框输入内容driver.find_ele原创 2017-04-01 14:22:57 · 548 阅读 · 0 评论 -
11.Selenium2 自动化测试实战-基于Python语言-隐式等待
隐式等待是通过一定的时常等待页面上某元素加载完成。如果超出了设置的时长元素还没有被加载,则抛出NoSuchElementException异常。Webdriver提供了implicitly_wait()方法来实现隐式等待,默认设置为0。from selenium import webdriverfrom time import sleep,ctimedriver=webdriver.Fi原创 2017-04-01 14:36:00 · 359 阅读 · 0 评论 -
10.Selenium2 自动化测试实战-基于Python语言-显示等待
WebDriver提供了两种类型的等待:显示等待和隐式等待。1.显示等待使WebDriver等待某个条件成立时继续执行,否则在达到最大时长时抛出超时异常(TimeoutException)。from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.supp原创 2017-04-01 14:31:58 · 581 阅读 · 0 评论 -
8.Selenium2 自动化测试实战-基于Python语言-WebElement接口2
*size: 返回元素的尺寸*text: 获取元素的文本*get_attribute(name):获得属性值*is_displayed(): 设置该元素是否用户可见from selenium import webdriverdriver = webdriver.Chrome()driver.get("http://www.baidu.com")#获得输入框的尺寸siz原创 2017-04-01 14:14:19 · 928 阅读 · 0 评论 -
7.Selenium2 自动化测试实战-基于Python语言-WebElement接口1
submit()submit()方法用于提交表单。例如,在搜索框输入关键字之后的“回车”操作,就可以通过submit()方法模拟。from selenium import webdriverimport timedriver =webdriver.Chrome()driver.get("http://www.youdao.com")driver.find_element_by_id原创 2017-04-01 14:11:30 · 302 阅读 · 0 评论 -
6.Selenium2 自动化测试实战-基于Python语言-126邮箱登陆、获得验证信息
from selenium import webdriverimport timedriver = webdriver.Chrome()driver .get("http://www.126.com")print("Before login.........")#打印当前页面titletitle=driver.titleprint(title)#打印当前页面URLnow...原创 2017-04-01 14:03:13 · 2761 阅读 · 0 评论 -
5.Selenium2 自动化测试实战-基于Python语言-控制浏览器后退、前进
from selenium import webdriverimport timedriver=webdriver.Chrome()#访问百度首页first_url='http://www.baidu.com'print("now access %s" %(first_url))driver.get(first_url)#访问新闻页面second_url='http://ne原创 2017-04-01 11:45:11 · 1173 阅读 · 0 评论 -
4. Selenium2 自动化测试实战-基于Python语言-跨目录模块调用
projec/|___model/| |___count.py| |___new_count.py|___test.pycount.pyclass A(): def add(self,a,b): return a +bnew_count.py from count import Aclass B (A)原创 2017-04-01 11:34:40 · 1057 阅读 · 0 评论 -
3.Selenium2 自动化测试实战-基于Python语言-模块调用
project/|——pub.py|___count.pypub.pydef add(a,b): return a + bcount.pyfrom pub import addprint(add(5,8))输出结果:===============================================9原创 2017-04-01 11:24:38 · 592 阅读 · 0 评论 -
12.Selenium2 自动化测试实战-基于Python语言-定位一组元素
定位一组元素的方法与定位单个元素的方法类似,唯一的区别就是在单词element后面多加了个s表示复数。定位一组元素多用于以下场景:*批量操作元素*先获取一组元素,再从这组元素对象中过滤出需要操作的元素。1.from selenium import webdriverimport os,timedriver =webdriver.Chrome()file_path='file原创 2017-04-01 14:44:46 · 262 阅读 · 0 评论 -
13.Selenium2 自动化测试实战-基于Python语言-多表单切换
在Web应用中,经常会遇到frame/iframe表单嵌套页面的应用,Webdriver只能在一个页面上对元素识别和定位,对于frame/iframe表单内嵌页面的元素无法直接定位,这时,就需要通过switch_to.frame()方法将当前定位的主体切换为frame/iframe表单内嵌的页面中。'''Date: 2017/03/28Method: * switch_to.fram原创 2017-04-01 14:55:39 · 1571 阅读 · 0 评论 -
20.Selenium2 自动化测试实战-基于Python语言-函数
python中通过def关键字来定义函数。Python 3.5.3 (v3.5.3:1880cb95a742, Jan 16 2017, 15:51:26) [MSC v.1900 32 bit (Intel)] on win32Type "copyright", "credits" or "license()" for more information.>>> def add(a,b):原创 2017-04-01 15:34:36 · 658 阅读 · 1 评论 -
19.Selenium2 自动化测试实战-基于Python语言-数组与字典
Python 3.5.3 (v3.5.3:1880cb95a742, Jan 16 2017, 15:51:26) [MSC v.1900 32 bit (Intel)] on win32Type "copyright", "credits" or "license()" for more information.>>> dicts ={"username":"zhangsan",'passw原创 2017-04-01 15:32:10 · 904 阅读 · 0 评论 -
18.Selenium2 自动化测试实战-基于Python语言-验证码处理
from random import randint#生成一个1000到9999之间的随机整数verify =randint(1000,9999)print(u"生成的随机数:%d" %verify)number=input("请输入随机数:")print(number)number=int(number)if number == verify: print("登录成功原创 2017-04-01 15:25:22 · 748 阅读 · 0 评论 -
1.Selenium2 自动化测试实战-基于Python语言-设置窗口大小、调用JS调整滚动条、截取图片
#coding=utf-8from selenium import webdriverfrom time import sleep#访问百度driver =webdriver.Chrome()driver.get("http://www.baidu.com")#设置浏览器窗口大小driver.set_window_size(1024,1024)#搜索driver.find_el原创 2017-04-01 11:13:17 · 2266 阅读 · 2 评论 -
17.Selenium2 自动化测试实战-基于Python语言-操作cookie
有时候,我们需要验证浏览器中cookie是否正确,因为基于真实cookie的测试是无法通过白盒和集成测试的。WebDriver提供了关于cookie的操作方法,可以读取、添加和删除cookie信息。WebDriver操作cookie的方法:*get_cookies(): 获得所有cookie信息。*get_cookie(name):返回字典的key为“name" 的cookie信息。原创 2017-04-01 15:19:07 · 562 阅读 · 0 评论 -
16.Selenium2 自动化测试实战-基于Python语言-上传文件
from selenium import webdriverimport time ,osdriver =webdriver.Chrome()file_path='file:///'+os.path.abspath('./webdriver_api/web_page/upfile.html')driver.get(file_path)#定位上传按钮,添加本地文件driver.fin原创 2017-04-01 15:09:13 · 551 阅读 · 0 评论 -
15.Selenium2 自动化测试实战-基于Python语言-警告框处理
最近学习Selenium2,关于警告框处理这里,碰到“保存设置”按钮点击,始终报错ElementNotVisibleException,书中的例子,仔细核对,还是有问题,查了很多资料,终于解决。'''Author: lxtDate: 2017/03/29Method: * text:返回 alert/confirm/prompt 中的文字信息。 * accept():接受现有警告原创 2017-04-01 10:15:22 · 1368 阅读 · 0 评论 -
14.Selenium2 自动化测试实战-基于Python语言-多窗口切换
Webdriver提供了switch_to.window()方法,可以实现在不同的窗口之间切换。'''Author: lxtDate: 2017/03/29Method: * switch_to.window() 切换窗口 * current_window_handle 获得当前窗口的句柄 * window_handles:返回所有窗口的句柄到当前会话'''fro原创 2017-04-01 15:05:18 · 330 阅读 · 0 评论