1
我正在使用frisbyjs從couchdb獲取實時數據,現在我需要驗證應用程序在indexeddb中保存的數據。有沒有使用量角器訪問indexeddb?如何使用量角器訪問indexedb
我正在使用frisbyjs從couchdb獲取實時數據,現在我需要驗證應用程序在indexeddb中保存的數據。有沒有使用量角器訪問indexeddb?如何使用量角器訪問indexedb
您可以通過executeScript
訪問客戶端上的任何內容。
//protrator.conf.js
onPrepare: function() {
global.getFromLocalStorage = function (key) {
return browser.executeScript(function (key) {
return localStorage.get(key);
}, key);
};
然後,使用在你的測試:
//user-spec.js
it('should save user to localstorage', function() {
expect(getFromLocalStorage('user-profile').name).to.Contain('Jorge');
});
UPDATE: 現在,如果有存儲沒有同步訪問(如在IndexedDB的),你想使用executeAsyncScript相反:
//protrator.conf.js
onPrepare: function() {
global.getFromIndexedDB = function (key) {
return browser.executeAsyncScript(function (key, cb) {
window.myDB.get(key).onsuccess = function (e) {
cb(e.target.result);
}
}, key);
};
//user-spec.js
it('should save user to indexeddb properly', function() {
expect(getFromIndexedDB('user-profile').name).to.Contain('Jorge');
});