最近在对testlink系统上做点东西,在定位部分元素时折腾了一段时间才搞定,特此记录

如下图

要定位红色框部分

一:先分析testlink页面结构,如下

如二个frame组成,一个是titlebar另一个是主frame,所以在定位时必须切换才能定位到相关元素

<frameset rows="70,*" frameborder="0" framespacing="0">
<frame src="lib/general/navBar.php?tproject_id=0&tplan_id=0&updateMainPage=1" name="titlebar" scrolling="no" noresize="noresize" />
<frame src="lib/general/mainPage.php" scrolling='auto' name='mainframe' />
<noframes>
<body>TestLink required a frames supporting browser.</body>
</noframes>
</frameset>

二、定位测试产品并选择对应产品内容:

    browser.switch_to_frame('titlebar')  #切换到iframe为titlebar上
print browser.current_url
#browser.find_element_by_name('testproject').click()
#遍历下拉框并选择需要的项目
select = browser.find_element_by_name("testproject")
allOptions = select.find_elements_by_tag_name("option") for option in allOptions:
print "Value is: " + option.get_attribute("value")
print "Text is:" +option.text
if testconfig['testprojectid'] in option.text:
option.click()
break
time.sleep(1)
browser.find_element_by_xpath("//img[@title='执行']").click() #执行用例

三、定位测试计划时一直定位不出来,头痛,先记录,看有没有大神指点

<div class="chosen-container chosen-container-single" style="width: 85%;" title=""><a tabindex="-1" class="chosen-single"><span>第三轮测试</span><div><b></b></div></a><div class="chosen-drop"><div class="chosen-search"><input type="text" autocomplete="off"></div><ul class="chosen-results"><li data-option-array-index="0" style="" class="active-result">
xxxx
</li><li data-option-array-index="1" style="" class="active-result">
xxxx
</li><li data-option-array-index="2" style="" class="active-result">
Ixxxx
</li><li data-option-array-index="3" style="" class="active-result">
第一轮测试
</li><li data-option-array-index="4" style="" class="active-result result-selected">
第三轮测试
</li><li data-option-array-index="5" style="" class="active-result">
第五轮测试
</li><li data-option-array-index="6" style="" class="active-result">
第四轮测试
</li></ul></div></div>

先将写的部分代码帖出:

#定位测试计划并选用
browser.switch_to_default_content()
browser.switch_to_frame('mainframe')
print browser.current_url
print testconfig['testplan']
browser.find_element_by_xpath("//div[contains(@class,'chosen-c')]").click()
time.sleep(1)
browser.find_element_by_link_text('IOS_D10V100_rc4')-----这里有问题
#drop_down.find_element_by_link_text('IOS_D10V100_rc4')
#browser.find_element_by_name('testplan')
#Select(browser.find_element_by_name('testplan')).select_by_visible_text(testconfig['testplan'])

Testlink定位实例的更多相关文章

  1. CSS学习摘要-定位实例

    CSS学习摘要-定位实例 注:全文摘自MDN-CSS定位实例 列表消息盒子 我们研究的第一个例子是一个经典的选项卡消息框,你想用一块小区域包括大量信息时,一个非常常用的特征.这包括含有大信息量的应用, ...

  2. HTML5调用百度地图API进行地理定位实例

    自从HTML5的标准确定以后,越来越多的网站使用HTML5来进行开发.虽然对HTML5支持的浏览器不是很多,但是依然抵挡不了大伙对HTML5开发的热情.今天为大家带来的是使用HTML5调用百度地图AP ...

  3. Relative 定位与Absolute 定位实例

    一直没有弄懂相对定位与绝对定位之间的关系,今天特来学习一下.本实践都是在360浏览器下测试所得. <!DOCTYPE html> <html> <head> < ...

  4. Selenium+Python定位实例

    常见的定位方式参见:http://www.cnblogs.com/ranxf/p/7928732.html 1.ID定位(find_element_by_id) <input class=&qu ...

  5. Android 百度定位SDKv4.2及6.0_百度定位实例_安卓定位实例

    介绍 由于项目需要.前几天一直在研究百度定位的功能.通过不断的实践终于有结果了.不愿意独享 现在我把我的研究成果和大家分享一下.其实百度的 API 已经相当不错了 这之所以要写出来.一是自己做一个笔记 ...

  6. android定位和地图开发实例

    在android开发中地图和定位是很多软件不可或缺的内容,这些特色功能也给人们带来了很多方便. 首先介绍一下地图包中的主要类: MapController : 主要控制地图移动,伸缩,以某个GPS坐标 ...

  7. Android开发之位置定位详解与实例解析(GPS定位、Google网络定位,BaiduLBS(SDK)定位)

    在android开发中地图和定位是很多软件不可或缺的内容,这些特色功能也给人们带来了很多方便.定位一般分为三种发方案:即GPS定位.Google网络定位以及基站定位 最简单的手机定位方式当然是通过GP ...

  8. scrapy爬虫框架入门实例(一)

    流程分析 抓取内容(百度贴吧:网络爬虫吧) 页面: http://tieba.baidu.com/f?kw=%E7%BD%91%E7%BB%9C%E7%88%AC%E8%99%AB&ie=ut ...

  9. HTML5 总结-地理定位-6

    HTML5 地理定位 定位用户的位置 HTML5 Geolocation API 用于获得用户的地理位置. 鉴于该特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的. 浏览器支持 Int ...

随机推荐

  1. 使用Fakes的Stub和Shim对ASP.NET MVC4进行单元测试

    这是一篇导航文,不是翻译. MSDN对stub和shim的解释和使用场景演示:http://msdn.microsoft.com/en-us/library/hh549175.aspx 一个更详细的示 ...

  2. 【Ubuntu】/etc/profile

    export JAVA_HOME=/home/hp/programmefiles/jdk1.8.0_73/export PATH=$JAVA_HOME/bin:$PATHexport SCALA_HO ...

  3. python tornado异步性能测试

    测试两个接口 # -*- coding:utf-8 -*- import time import tornado.web import tornado.gen import tornado.ioloo ...

  4. feed流拉取,读扩散,究竟是啥?

    from:https://mp.weixin.qq.com/s?__biz=MjM5ODYxMDA5OQ==&mid=2651961214&idx=1&sn=5e80ad6f2 ...

  5. PMP用语集

    AC actual cost 实际成本 ACWP actual cost of work performed 已完工作实际成本 BAC budget at completion 完工预算 BCWP b ...

  6. GoF--适配器设计模式

    1.概念:  适配器模式(Adapter Pattern)把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作. 2.形式  a.类的适配器模式  ...

  7. Docker应用之镜像

    一.Docker包括三个基本概念 1.镜像(Image):Docker镜像是一个只读模板,例如一个镜像可以包含完整的Linux系统环境,里面仅仅安装了Apache或用户其他应用程序:镜像可以用来创建D ...

  8. 【AI】Win10-Tensorflow

    一.安装 第一步:先安装anaconda3第二步:pip install --upgrade --ignore-installed tensorflow或者:pip install tensorflo ...

  9. radio的取值

    <dd id="pingjia${evaluation.orderItemId }" class="ms-wf clearfix" idx="$ ...

  10. 使用IEDA新建jsp项目以后使用javax.servlet.*报错

    新建一个jsp项目,然后再里面配置完了一切写了一个servlet的文件: 点击运行的时候出现了javax程序包不存在的错误,百度了许多都在说是tomcat的事情,吧tomcat/lib下面的servl ...