假设我们有一个angular
服务,其功能如下:
this.getAllBranches = function () {
var deferred = $q.defer();
db.transaction(function (tx) {
tx.executeSql("select * from branch", [], function (tx, res) {
var branchList = [];
for (var i = 0; i < res.rows.length; i++) {
var branch = {};
branch.id = res.rows.item(i).id;
branch.code = res.rows.item(i).code;
branch.address = res.rows.item(i).address;
branch.city = res.rows.item(i).city;
branch.state = res.rows.item(i).state;
branch.zip = res.rows.item(i).zip;
branchList.push(branch);
}
deferred.resolve(branchList);
}, function (t, e) {
alert('An error occurred getting list of branches.');
deferred.reject(e);
});
});
return deferred.promise;
};
我们如何测试以上功能?
最佳答案
看一下cordova-plugin-test-framework-所有核心的cordova插件都将其用于自动和手动测试;工作流程如下:
创建一个新的应用程序,
添加三个插件:cordova plugin add path-to-cloned-plugin
cordova plugin add path-to-cloned-plugin/tests
cordova plugin add https://github.com/apache/cordova-plugin-test-framework.git
更新应用程序根目录下的config.xml-将<content src="index.html">
更改为<content src="cdvtests/index.html">
,
运行应用程序。
您可以在Cordova-sqlite-storage中研究如何完成此操作,以作为参考。
可以在here中找到其他sqlite测试。