25
是否有可能像你在單元測試做訪問您的量角器測試中的角度?訪問角量角器測試裏面
使用的情況是,我有一個轉換文本服務,我要訪問該服務的實際測試腳本中變換一些數據。我知道量角器中有addMockModule
方法,但我無法弄清楚如何將它用於此目的。
將不勝感激任何幫助!
是否有可能像你在單元測試做訪問您的量角器測試中的角度?訪問角量角器測試裏面
使用的情況是,我有一個轉換文本服務,我要訪問該服務的實際測試腳本中變換一些數據。我知道量角器中有addMockModule
方法,但我無法弄清楚如何將它用於此目的。
將不勝感激任何幫助!
有一種叫做功能評估()。在dom中查找一個元素,然後運行表達式。
例如。如果要算在http://angularjs.org/網站待辦事項的數量(下添加一些控制),這樣做:在量角器
打開元素探險
./node_modules/protractor/bin/elementexplorer.js
browser.get('http://angularjs.org/')
element(by.model('todoText')).evaluate('todos.length').
then(function(count) {
console.log(count)
});
它應該給你一個2
您還可以使用executeAsyncScript
browser.executeAsyncScript(function(callback) {
// Here we use document.body, but your app may live under a different
// element.
var service = angular.element(document.body)
.injector()
.get('myService');
service.query({}, function(data) {
callback(data);
});
}).then(function (output) {
console.log(output);
});
看到一個例子:https://github.com/andresdominguez/protractor-meetup/blob/master/test/e2e/api-helper.js
明白了,讓我試試executeAsyncScript。第一個似乎是在範圍上執行更簡單的事情。 – wlingke
github上的量角器聚會提供的例子非常好,非常感謝。 – FireDragon
請注意,第二個變體實際**創建**一個新的注入器。這可能會導致像錯誤:'未知的提供:。$ rootElementProvider' 使用''angular.element([DOM元素])噴油器()得到( '爲myService');''根DOM元素(其中ng-app被設置)來獲得現有的注射器。 – Vladius