Wuji同学曾经分享过一个使用不同UI5 library来测试某个控件behavior的tip: Use codepen.io to try out SAPUI5 controls with different version of the core lib.

Ben同学也分享了另一种办法:SAP UI5 Snippix,可以切换不同的UI5版本:

http://veui5infra.dhcp.jerry.corp:8080/snippix/

借助Fiddle使用不同版本的UI5库文件进行测试_控件

以上两种办法都只能测试自己的sample code在多种UI5 version 之下的不同behavior,如果想测试整个application,比如GM4上的My Opportunity在某个特定的UI5 version上的behavior,可以直接ctrl + alt +shift + p,

在这个下拉菜单里选择你想测试的版本:

借助Fiddle使用不同版本的UI5库文件进行测试_下拉菜单_02

这个功能只在UI5 version 1.30和之后的版本有效。

另一种比较通用并且其他公司普遍采取的做法:在自己电脑上装一个Fiddle,扮演reverse proxy的角色。启动Fiddle之后,查看其host name和监听的端口号:

借助Fiddle使用不同版本的UI5库文件进行测试_it_03

借助Fiddle使用不同版本的UI5库文件进行测试_重定向_04

把这些信息设置到你的电脑浏览器的proxy或者手机wifi 连接的proxy setting里面,之后用你电脑/手机应用访问网络产生的network request就会被Fiddle 拦截下来,并能够随心所欲地重定向。

例如我们想实现这样一条映射规则:

凡是请求https://openui5.hana.ondemand.com/resources/sap-ui-core.js 的request,都应该被映射到1.30.0的js去:https://openui5.hana.ondemand.com/1.32.0/resources/sap-ui-core.js

只需要这样:

借助Fiddle使用不同版本的UI5库文件进行测试_UI5_05

在这个hook的尾部加一段代码即可:

借助Fiddle使用不同版本的UI5库文件进行测试_it_06

语法仿照上面被注释掉的例子:

借助Fiddle使用不同版本的UI5库文件进行测试_it_07

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

借助Fiddle使用不同版本的UI5库文件进行测试_下拉菜单_08