0

rspec に慣れていないせいかもしれませんが、テストで何が起こっているのかわかりません。

Scrape と呼ばれる 2 つのクラスがあります。もう 1 つは Result (クリエイティブ) Scrape です。サイトを検索してページから結果をスクレイピングし、それぞれから新しい Result インスタンスを作成する Web スクレイピング クラスです。

Result インスタンスは、Result.all を介してアクセス可能なクラス変数配列に格納されます。

これは実際のプログラムでは実際に機能しますが、この動作のテストを作成しようとすると失敗します。

    describe "#scrape_results" do
        it "accepts a url scrapes the page and creates a Result for each" do
            s = Scrape.new
            s.scrape_results(@url)
            expect(Result.all.count).not_to eq(0)
        end
    end

pry を使用して #scrape_results を手動で実行すると、テストを実行するたびに Result.all.count が 0 になり、テストに合格します。

お時間をいただき、ご辛抱いただき、ありがとうございました。

4

1 に答える 1