我已经为我的应用程序设置了 jasmine 测试。在我的应用程序中,我有不应在 IE8 中工作的 javascript:
var foo = Object.create(Array.prototype);
当我运行 mvn jasmine:bdd 并在 Internet Explorer 中打开测试页面(browserMode 设置为 Internet Explorer 8)时,它按预期失败:
TypeError: Object doesn't support property or method 'create'
但是,当我运行时:
mvn jasmine:test -DbrowserVersion=INTERNET_EXPLORER_8
我所有的测试都是成功的。日志指定 browserVersion 设置为 INTERNET_EXPLORER_8。
我希望两者都能给我相同的结果。这导致我们的 ci 测试出现问题,因为它释放了我想要捕获的 js 错误。
这是否应该按我的预期工作,如果没有,我应该改变什么?
此外,这是我知道如何测试多个浏览器的最佳方式。有没有更好的方法让我想念?
编辑
一位同事试图打破我对 browserVersion 甚至不会捕获此类错误的希望,并建议它只是为了更改标头,以便测试也可以涵盖特定于浏览器的 javascript(仅在浏览器是特定版本)。这是准确的吗?