これはおそらくnoobieに関する質問ですが、私はRubyプロジェクトに取り組んでおり、ロードされたWebページを読む必要があるいくつかのテストでlocalhostからいくつかのファイルを提供しなければなりませんローカルに。私はgulp
を使っていますが、私はRubyでやりたいと思います。私はRackについて知っていましたが、私がやりたいと思う非常に簡単なことをするために私の頭を包み込むことはできません。Rubyで基本的なローカルサーバーを設定する
これは私のフォルダ構造である:私は私のgulpfile.js
に今持っている何
$ tree
.
├── lib
│ └── page_reader.rb
├── spec
│ ├── fixtures
│ │ └── index.html
│ └── page_reader_spec.rb
└── gulpfile.js
は次のとおりです。
var
browsersync = require('browser-sync').create(),
gulp = require('gulp')
;
gulp.task('server', function() {
browsersync.init({
server: {
baseDir: './spec/fixtures/'
},
port: 4000,
notify: false,
open: false
});
});
基本的に、私はindex.html
./spec/fixtures/
内部のフォルダを持っていると私はbrowser-sync
モジュールを使用していますローカルサーバーを起動して、テストフォルダ内のfixtures
フォルダを指します。私がテストを実行したい場合は、私がしなければならない。
$ gulp server
を一つの端末では、その後、私はテストを実行しているそれに対してページをロードするためにhttp://localhost:4000
に移動し、別の端末で実行します。
$ bundle exec rspec
テストを実行する。
私はgulp
で行っていることを実行する方法はありますか?代わりにRubyを使用していますか?私はbrowser-sync
モジュールと同様の方法で動作したが、見つからなかった宝石を探した。しかし、私はそれがギャルとそれをしているように簡単な方法がなければならないと思う。私はgulp
でそれを続けることができますが、それは完璧に動作しますが、JavaScriptとRubyをこの特定のやり方で、この文脈で混在させるのは変です。
ブラウザ同期の具体的な機能にはどのようなものがありますか?あなたの質問タイトルは、静的なhttpサーバを設定しようとしていることを示唆しています。静的なhttpサーバは、実行しようとしているものより簡単です。 Seleniumのルビバインディングを見てみましょう。 –