[HTTP]如何将“ www.example.com”更改为“ localhost:3000”
|
嗨,我在Rails应用程序中创建测试用黄瓜。在我的分步方案中,我使用了http基本身份验证,到目前为止它通过了基本身份验证,但是当我想在控制器上调用方法并发布一些参数时,我遇到了问题:
首先,我在步骤中使用此代码,但未能穿越控制器的方法:
post some_admin_url, @params
第二,我使用了此代码,并且也失败了,错误是在运行URI.parse重定向到\“ www.example.com \”时我想去\“ localhost:3000 / admin \”,所以我可以匹配数据:
Net::HTTP.post_form(URI.parse(some_admin_url), {\'from\' => \'2005-01-01\',\'to\' => \'2005-03-31\'}) { |i| }
未来:
@硒
方案:管理员想要激活用户
给定一个以管理员身份登录的用户
和管理页面
脚步 :
给定/ ^一个用户以admin $ /登录
create_user_admin
访问\'/ user_sessions / new \'
fill_in \'user_session [login] \',:with => \'siadmin \'
fill_in \'user_session [密码] \',:with => \'12345 \'
click_button \“ Anmelden \”
结束
给定/ ^ admin页面$ /做
要求\“ net / http \”
需要“ uri”
uri = URI.parse(user_action_admin_users_url)<br/>
http = Net::HTTP.new(uri.host, uri.port)<br/>
request = Net::HTTP::Get.new(uri.request_uri)<br/>
request.basic_auth(\"username\", \"password\")<br/>
response = http.request(request)<br/>
结束
enter code here
救命 !!!
谢谢
没有找到相关结果
已邀请:
3 个回复
诉嘎归亮
现在,我们实际上使用了Rack中间件(仅在测试env中:),该更改透明地更改了应用程序的env [HTTP_HOST],因此我们不必关心我们使用的是哪个testframework /浏览器驱动程序。 您使用什么框架?
靛取糕奖穿
要么
,当您扩展ActionController :: TestCase时
疾很毋悲
更改为
要么