特定のページをスクレイピングして解析するスクリプトをRubyで書いているのですが、
このスクリプトのテストをRSpecで書く時にどこにHTMLファイルを置いて、
どうspecファイルから呼び出すのが正しいのでしょうか?

Rails環境ではななくフレームワークなしのRubyのコードで以下の様な構成です。

foo.rb
foo/sub_class.rb
spec/foo_spec.rb
spec/spec_helper.rb
spec/foo/sub_class_spec.rb

追記

具体的にはSelenium::WebDriver.forで生成した driverFoo::SubClassが受け取り、解析をするためにNokogiri@driver.page_sourceで渡しています。

(上ではSubClassと書いていたのですが、ここではBarにしてます。)

class Foo::Bar
  attr_accessor :driver
  def initialize(code: code, driver: driver)
    @code = code
    @driver = driver
  end

  def doc
    Nokogiri::HTML(@driver.page_source)
  end
end

ですので、ここで受け取る@driver.page_sourceFile.readで保存していたHTMLからの読み込みで差し替えたいのですがうまく行きませんでした。ファイルの読み込み自体はできていますので配置ではなくallowの使い方の問題だと思うので、そちらについてはもう少し調べてみます。

ファイルの読み込み方に問題があれば指摘をよろしくお願いします。

require 'spec_helper'

describe Foo::Bar do
  let(:bar){ Foo::Bar.new(code: 1, driver: nil) }
  describe "driver#page_source" do
    it "do something" do
      allow(bar.driver).to receive(:page_source){ Nokogiri::HTML(File.read("spec/fixture/bar/sample.html")) }
      expect(bar.driver.page_source).to present
    end
  end
end

エラー内容は以下のようになっています。

NameError:
       undefined local variable or method `present' for #<RSpec::ExampleGroups::FooBar::DriverPageSource:0x007fc8660444e0>