У меня есть тест, который каждый раз, когда я его запускаю, выдает " UnknownError: неизвестная ошибка: превышен максимальный размер стека вызовов."
Этот тест вызывает метод в одной из моих служб, которая записывается на Google Диск.
Тест, который терпит неудачу, вызывает функцию doDrive с помощью "ui", что означает обновление элемента "Диск". Если я сменил один символ "ui" → "ni", то есть создать новый элемент "Диск", тест будет работать. Проверяемый код работает нормально при обычном использовании.
it('should update a file', function() {
browser.executeAsyncScript(function(callback) {
// get service
var service=angular.element(document.getElementById('ngapp')).injector().get('DriveQ')
// generate a title
var title = 'title of file';
// call doDrive to create a new file
service.doDrive({t:'ui',id:'0B6B-RNrxsCu2Sll7JZTYy2aDA', item:{title:title}})
.then(function (resp){
resp.originalTitle=title;
callback(resp)
});
}).then(function(resp) {
expect(resp.title).toEqual(resp.originalTitle);
});
});
Я использую хром-webdriver напрямую, и у меня также есть browser.ignoreSynchronization = true;