今日は、django と webdriver を組み合わせてLiveServerTestCase
みましたsplinter
。phantomjs
これが私がしていることです(簡易版):
class Test(LiveServerTestCase):
def setUp(self):
self.browser = Browser('phantomjs')
def tearDown(self):
self.browser.quit()
def test(self):
self.browser.visit(self.live_server_url)
self.assertIn("Hello world!", self.browser.title)
テストメソッドの実行に1秒かかる場合でも、テストが正常に実行されることがあります。しかし、1 つのテスト メソッドを実行するのにランダムに ~100 秒かかることもあれば、完了するまで待つのが辛抱強くなるまでフリーズすることもあります。
django_nose
テストランナーとして使用し、コマンド--liveserver=localhost:8081-8181
にポートの範囲を渡します./manage.py test
。
スピードアップする方法はありますか?より高速な他の Web テスト ランナーはありますか?
デフォルトの Web ドライバーは、速度に関しては信頼性が高いように見えます (テスト メソッドごとに 1 ~ 3 秒) が、それでもかなり遅いです。また、テスト用にヘッドレス ブラウザを使用したいと考えています。