`
try001
  • 浏览: 5590 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

ruby及watir统计网页中链接数量的语句

阅读更多
有时候需要统计网页中或者网页某个区域中的链接数量,刚开始我尝试以下语句,但不成功:
ie.links(:id, /bra bra/).length

后来发现以下语句可行:
ie.div(:id, “searchList”).links

之后发现如下更有效的语句:

links_searchlist = ie101.links.find_all { |link| link.class_name == ‘permalink’ }
puts “the links in the searchlist:”
puts links_searchlist.length


searchlistlinks = ie102.links.find_all { |link| link.id =~ /hitURL/ }
links_searchlist = searchlistlinks.length
puts links_searchlist

searchlistlinks = ie33.links.find_all { |link| link.href =~ /something/ }
类似的语句不行:searchlistlinks = ie33.links.find_all { |link| link.url =~ /something/ }

最近发现,如果链接数量比较多,以上语句耗时太长,通过google和百度,找到了更高效的语句:

links = ie51.div(:id, ‘threadlist’).html.scan(/something/).count
puts links

我自己的原创: http://www.sdgz.cn
分享到:
评论
4 楼 try001 2010-02-22  
diyuxinlang 写道
try001 写道


最近发现,如果链接数量比较多,以上语句耗时太长,通过google和百度,找到了更高效的语句:

links = ie51.div(:id, ‘threadlist’).html.scan(/something/).count
puts links



你最后的方法会有一些 Bug 出现吧!

例如:


<div id="threadlist">
    <a href="http://www.something.com/">http://www.something.com/</a>
</div>


如果是以上的HTML代码的情况下,
链接本应该是1个,结果却是2个。

而且,scan 方法返回的是 Array,
使用 count 来取得数组元素个数的话,是会报错的。

使用count是可以的,链接的数量倒没特别注意,实际应用时,如果结果是2倍的话,我通常直接除2。
3 楼 diyuxinlang 2010-02-22  
try001 写道


最近发现,如果链接数量比较多,以上语句耗时太长,通过google和百度,找到了更高效的语句:

links = ie51.div(:id, ‘threadlist’).html.scan(/something/).count
puts links



你最后的方法会有一些 Bug 出现吧!

例如:


<div id="threadlist">
    <a href="http://www.something.com/">http://www.something.com/</a>
</div>


如果是以上的HTML代码的情况下,
链接本应该是1个,结果却是2个。

而且,scan 方法返回的是 Array,
使用 count 来取得数组元素个数的话,是会报错的。
2 楼 try001 2010-01-09  
fireflyman : API 2.0?
1 楼 fireflyman 2010-01-09  
Api 2.0

相关推荐

    Windows下Ruby+Watir自动化测试的环境搭建及数据读取

    ### Windows 下 Ruby + Watir 自动化测试的环境搭建及数据读取 #### 一、概述 本文将详细介绍如何在 Windows 系统上搭建 Ruby 和 Watir 的自动化测试环境,并介绍如何通过 Ruby 脚本读取不同数据源中的测试数据进行...

    ruby 2.00 selenium webdriver,watir webdriver 备份打包

    Ruby 2.00、Selenium WebDriver 和 Watir WebDriver 是自动化测试领域中广泛使用的工具,尤其在Web应用程序的测试中。下面将详细讲解这三个概念及其相互关系。 Ruby 2.00 是Ruby编程语言的一个版本,发布于2013年,...

    watir gui test tool

    4. **断言与验证** - 通过Watir,可以方便地编写断言语句来验证页面元素的状态,比如检查特定文本是否出现在页面上,或者确认链接是否有效。 5. **网页对象模型** - Watir提供了网页对象模型,将HTML元素映射为Ruby...

    everyday scripting with ruby

    《Everyday Scripting with Ruby》是一本面向软件测试从业者及希望提升自动化测试能力的技术人员的专业书籍。Ruby是一种简洁且功能强大的脚本语言,广泛应用于Web开发、自动化测试、数据处理等领域。本书通过一系列...

    百度软件测试开发工程师面试题整理

    在测试工具方面,如Selenium、Ruby-Watir、QTP和LoadRunner等都是常用的自动化测试工具。候选人需要了解这些工具的基本原理和使用场景,能够根据实际的项目需求选择合适的测试工具来提高测试效率。 最后,项目和...

    百度质量部测试开发工程师面试题整理

    2. Ruby-Watir:另一个基于Ruby的自动化测试工具,用于测试Web应用。 3. QTP:一种自动化测试工具,支持功能测试和回归测试。 4. LoadRunner:性能测试工具,用于测试软件在高负载下的性能。 以上知识点梳理涵盖了...

    百度笔试面试

    外部工具部分,如Selenium、Ruby-Watir、QTP和LoadRunner等,这些是进行自动化测试和性能测试时常用的工具,面试者需要了解其基本原理和使用方法。 以上内容展示了百度笔试面试所涵盖的众多知识点,囊括了从基础...

    virtual_agent_compact_app

    例如,Ruby的Sinatra框架可用于快速构建轻量级Web服务,而Watir或Capybara等库则可以用于测试和模拟用户与应用的交互。 在文件名"virtual_agent_compact_app-develop"中,"develop"可能表示这是应用程序的开发版本...

Global site tag (gtag.js) - Google Analytics