测试必须在时间、质量和成本之间获取一个平衡点,这是测试策略和测试设计的价值体现。
2.15 富文本(richtext)
上一篇 /
下一篇 2018-06-12 10:51:03
/ 个人分类:Python+Selenium2 WebDriver API
2.15 富文本(richtext)
_3yJ8Bf0前言51Testing软件测试网5@1B&d;u9PB"r
富文本编辑框是做web自动化最常见的场景,有很多小伙伴不知从何下手,本篇以博客园的编辑器为例,解决如何定位富文本,输入文本内容51Testing软件测试网 L!F)`!MK8c4Im
一、加载配置
)h
S!BP8Q2q(d0t0 1.打开博客园写随笔,首先需要登录,这里为了避免透露个人账户信息,我直接加载配置文件,免登录了。
`5nQ8Ws(v%W-P0x0
}eh?1h"Z051Testing软件测试网/{q?$Bs2z8}+hR二、打开编辑界面51Testing软件测试网yw+wxSC'IJ:c a
1.博客首页地址:bolgurl = "http://www.cnblogs.com/"
;J0NOL/~q;b0 2.我的博客园地址:yoyobolg = bolgurl + "yoyoketang"
#dv
S5F@1QL0 3.点击“新随笔”按钮,id=blog_nav_newpost
O9qw| MQ6aG5^0qD.j q4YB0
kTKR*eX+[0c0 i*J@a%jND+puc0三、iframe切换
6S7Y\CE:W;J"jT9`0 1.打开编辑界面后先不要急着输入内容,先sleep几秒钟51Testing软件测试网'UG
f6tYM5ra7p`
2.输入标题,这里直接通过id就可以定位到,没什么难点51Testing软件测试网 l^}l.h
3.接下来就是重点要讲的富文本的编辑,这里编辑框有个iframe,所以需要先切换51Testing软件测试网9I
r%\|
o?
k:Z/j@Z"Bl0(关于iframe不懂的可以看前面这篇:<iframe>)51Testing软件测试网v$Fe`l4S/iS9kC
/lP#E*@T8gs
i;i0
(A0J)Q:m-n
KN0 Q q;g]1] U5z,fZ3l0 51Testing软件测试网*M6\-a8K!E
51Testing软件测试网}w2h`(]!H3K1z 四、输入正文
U2W:lk-Y}0H0 1.这里定位编辑正文是定位上图的红色框框位置body部分,也就是id=tinymce
7~:w\ nI
\s?051Testing软件测试网"Q;l/qr8Br+I~[ 2.定位到之后,直接send_keys()方法就可以输入内容了
'c"T3yq3F.[
o'm0$qA8poq)ex0 3.有些小伙伴可能输入不成功,可以在输入之前先按个table键,send_keys(Keys.TAB)
4@+pS"[av2t051Testing软件测试网~(Wo7{-qMw_51Testing软件测试网*x3h)d;kLp,o.P
7A6\RHF6W0BV%G0五、参考代码:
G`%?6Gg^0#coding:utf-8fromseleniumimportwebdriverfromselenium.webdriver.common.keysimportKeysimporttime
profileDir= r'C:\Users\Gloria\AppData\Roaming\Mozilla\Firefox\Profiles\1x41j9of.default'profile=webdriver.FirefoxProfile(profileDir)
driver=webdriver.Firefox(profile)51Testing软件测试网JYl8J
\8Be;Y
bolgurl="http://www.cnblogs.com/"yoyobolg= bolgurl +"yoyoketang"driver.get(yoyobolg)51Testing软件测试网0J%y+V+?C(Z1s!m
driver.find_element_by_id("blog_nav_newpost").click()
time.sleep(5)
edittile= u"Selenium2+python自动化23-富文本"editbody= u"这里是发帖的正文"driver.find_element_by_id("Editor_Edit_txbTitle").send_keys(edittile)
4M)y8v%aq#W;M
h0driver.switch_to.frame("Editor_Edit_EditorBody_ifr")
driver.find_element_by_id("tinymce").send_keys(Keys.TAB)
driver.find_element_by_id("tinymce").send_keys(editbody)
收藏
举报
TAG: