我在 worklight 6.1 中创建了一个简单的 dojomobile 应用程序。我将移动测试工作台安装在与 worklight 相同的 eclipse 环境中。下面的代码是混合应用程序 index.html 的 dojo 代码。它是一个非常基本的 dojo 移动应用程序,使用来自 worklight 的默认标头信息。
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>index</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<link rel="shortcut icon" href="images/favicon.png">
<link rel="apple-touch-icon" href="images/apple-touch-icon.png">
<link rel="stylesheet" href="css/main.css">
<script>window.$ = window.jQuery = WLJQ;</script>
<script type="text/javascript" src="dojox/mobile/deviceTheme.js"></script>
<script type="text/javascript" data-dojo-config="isDebug: false, async: true, parseOnLoad: true, mblHideAddressBar: false" src="dojo/dojo.js"></script>
</head>
<body style="display: none;">
<div data-dojo-type="dojox.mobile.View" id="view0" data-dojo-props="selected:true">
<div data-dojo-type="dojox.mobile.Heading" data-dojo-props="label:'Heading'"></div>
<h2 data-dojo-type="dojox.mobile.RoundRectCategory">Category</h2>
<div data-dojo-type="dojox.mobile.RoundRect">
<div data-dojo-type="dojox.mobile.RoundRectList">
<div data-dojo-type="dojox.mobile.ListItem" data-dojo-props="label:'Item'"></div>
<div data-dojo-type="dojox.mobile.ListItem" data-dojo-props="label:'Item'"></div>
</div>
</div>
<button data-dojo-type="dojox.mobile.Button">Button1</button>
<button data-dojo-type="dojox.mobile.Button">Button2</button>
<button data-dojo-type="dojox.mobile.Button">Button3</button>
</div>
<script src="js/initOptions.js"></script>
<script src="js/main.js"></script>
<script src="js/messages.js"></script>
</body>
</html>
当我在测试工作台中注册应用程序并在我的 android 设备(Samsung s4)上记录测试时出现问题。测试应用程序无法识别它正在运行 dojo。设备上的应用程序显示缺少标题行。来自记录步骤的测试内容表明我点击了JQuery Button而不是dojox.mobile.Button。
奇怪的是,当您重播录制的测试时,应用程序正确显示(标题和其他 dojo 控件),并且脚本失败,因为它正在寻找JQuery Button。我可以进入并编辑脚本以使其正确,但这不是我想要对由于应用程序更改而录制或重新录制的每个脚本执行的操作。
请让我知道我做错了什么或者这是一个已知问题。