简单地说,最后,我想从网址中获取查询字符串并将其添加到我的cookie中。
我知道如何设置cookie并使用Vanilla JS。
但是我想用Jasmine来测试所有错误的情况而不只是快乐的路径。
无论如何,如何设置Jasmine中的url,以便我可以传递任何查询字符串(如http://www.blah.com?ref=yayayadaydayday
,以便我可以在我的测试中使用document.location.search
并从那里获取它?
我猜你在Jasmine中模拟时调用的是什么,但是如果这是rails,我会添加一个查询字符串,如:
test "can get some results" do
get :show, :q => shops(:one).name #how do i add this 'q' string in jasmine?!
refute_nil assigns(:search)
end
答案 0 :(得分:3)
答案 1 :(得分:2)
我最近不得不做类似的事情,为一组选项卡测试一些代码,如果设置了URL哈希,则选择一个选项卡。我使用历史API来操作URL:
loadFixtures('tabs-fixtures.html');
window.history.replaceState(null, null, '#three');
并且代码确实从URL中读取了哈希值。
我的测试设置使用了PhantomJS。我想其他浏览器都可以工作,除非你有一个旧的IE启动器。