【问题标题】:Loading Variable Library Into Watir将变量库加载到 Watir
【发布时间】:2013-12-01 18:44:58
【问题描述】:

我正在尝试将一个文件加载到 watir 中,该文件将包含我需要用于跨站点的许多不同功能的所有常量。每当我这样做时,它总是说浏览器未定义。

所有的常量都以 browser.xxxxx 开头。我环顾四周,似乎无论如何都无法加载包含您可能需要的所有变量的单个文件,任何人都可以确认这是绝对不可能的吗?

谢谢

【问题讨论】:

    标签: ruby testing shared-libraries constants watir


    【解决方案1】:

    您可以加载包含变量的文件。但是,您需要对方法进行一些更改:

    1. 变量名称browser.xxxx 无效,因为您不能在变量名称中包含句点(.)。您需要一个不同的变量名,例如,改用下划线 - browser_xxxx
    2. browser_xxxx 这样的变量是局部变量。它只在它声明的文件中可用。如果你想在另一个文件中使用它,你应该使用一个常量,例如BROWSER_URL,或者创建一个模块以便你可以做Browser.url

    使用常量的示例

    假设你的 constants.rb 文件包含:

    BROWSER_URL = 'www.google.ca'
    

    然后你的其他脚本文件(假设在同一个文件夹中)可以:

    require_relative 'constants'
    require 'watir'
    
    browser = Watir::Browser.new
    browser.goto BROWSER_URL
    

    模块使用示例

    您可以在您的 constants.rb 文件中创建一个包含各种常量的模块:

    module Browser
      @url = 'www.google.ca'
    
      class << self
        attr_reader :url  
      end
    end
    

    然后你的其他脚本文件(假设在同一个文件夹中)可以:

    require_relative 'constants'
    require 'watir'
    
    browser = Watir::Browser.new
    browser.goto Browser.url
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-19
      • 2017-07-13
      • 2011-01-11
      • 2023-03-27
      • 2023-04-09
      • 2013-01-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多