TL:DR - 我怎样才能让黄瓜通过应用程序请求一页, 却假装请求来自“http://mysubdomain.mydomain.
好吧,这可能需要一段时间来解释, 但请忍耐我...
我是一个经验相对丰富的铁路,但只是最近才进入了完全的BDD/TDD。
黄瓜中的 Im 测试页面中有一些用于创建新嵌套天体的缩略图(非常相似于此 < a href=> http://railscasts.com/episodes/196-nested-model-form-register” rel=“nofollow” >RailsCast )。
问题在于我不仅有可变子域,我也有可变的 Domains (请相信我...)
因此,应用程序需要查询 < code> request. host 以找到 current_ domain
和 current_subdomain
,然后才能将背景中的一切连接起来, 并且可以继续运行应用程序的右位 。
在背景步骤中使用 host! > 域名
和 Capybara.default_host=域名
技术,使所有测试都通过罚款。
然而,当我使用@javascript标签 来测试页面上的.js 的功能时, 我得到Firefox 的抓取焦点, 然后试图加载全部 url 。
现在还发生我正在运行 Pow, 并且让这些 URLs 连接到 dev 服务器上。 毫不奇怪, 它们并不像用户试图登录时那样工作, 它正在查看 dev DB 。 我在关闭 pow 服务器后尝试运行套房, 它只是超时了 。
当然这个标本的网络司机不应该实际访问 URL, 但只是运行应用程序本身 并假装主机是我告诉它的是什么?
我显然遗漏了一些东西——我怎么能让黄瓜在内部建立网页,但假装请求来自“http://mysubdomain.mydomain.dev”?
edit: Jason - 变量域诀窍与子域完全相同... 如果您可以查询 db 账户的 db 账户, 以 request.subdomains. first
为基础。 您可以通过 request. domain
查询一个域名。 您只需双倍检查一些东西, 如资本化等, 以尽量减少出现错误的 url 拆解东西的风险, 显然您需要确保在 db 首个域记录中存在...
- 哦,并隐藏 域名记录请求 谨慎地...
这意味着您可以使用相同的应用程序, 但使用不同的样式和着陆页等。 对客户基础广泛的 PaaS 应用程序有用 — 您可以重新命名它, 并把它作为解决某个群体问题的具体办法出售, 即使它下面的内脏是一样的 。