使用 cucumber 测试不同屏幕尺寸(设备)的行为
Posted
技术标签:
【中文标题】使用 cucumber 测试不同屏幕尺寸(设备)的行为【英文标题】:Using cucumber to test the behaviour of different screen sizes (devices) 【发布时间】:2011-11-03 17:27:40 【问题描述】:我正在使用 cucumber 自动化我的测试,并且我需要自动化移动页面中导航栏的行为,因为这些菜单选项是根据屏幕大小显示的......例如:
480px 有菜单 a、菜单 b、菜单 c 和菜单 d。
320px 有菜单 a、菜单 c 和菜单 d。
我的问题是,这可以自动化吗?如果是这样,有人有什么想法吗?
提前致谢, 伊恩
【问题讨论】:
【参考方案1】:我把它放在我的一个步骤定义中,它起作用了:
if Capybara.current_driver == :selenium
window = Capybara.current_session.driver.browser.manage.window
window.resize_to(1200, 800)
end
我正在使用 Cucumber 和 Capybara。
【讨论】:
【参考方案2】:两种可能的选择:
使用真正的浏览器进行测试,例如通过 Selenium,它具有设置窗口大小的方法,应该可以通过 Capybara 中的本机代理方法调用。 将窗口约束值作为额外的查询字符串传递给测试。您的生产代码可以检查它的存在,并使用它来代替实际的窗口大小。例如http://example.com/products?constrain_width=480【讨论】:
测试用例的生产代码检查可能是要避免的:) 有时候别无他法。以上是关于使用 cucumber 测试不同屏幕尺寸(设备)的行为的主要内容,如果未能解决你的问题,请参考以下文章
如何为不同的屏幕尺寸android studio自动调整imageview的大小?
为不同的屏幕尺寸提供不同的图片(为那些没有必要下载全尺寸大图的设备节省带宽)