iOS'ta UI Otomasyon testi için JavaScript modülü modelini kullanan küçük bir test çerçevesi yapıyorum. Ancak, #import ve genişletme modülleri dayalı garip sonuçlar alıyorum.#import iOS U UI Otomasyonunda nasıl çalışır?
Ben Tester-Module.js
denilen taban testi modülü vardır: Ben benim test durumda bu modülü varsa
(function() {
var Tester = this.Tester = {};
Tester.setUp = function() {
UIALogger.logMessage('Regular SetUp()');
}
}).call(this);
, iyi çalışıyor. İşte (tester.js
Ben Instruments içe dosyasıdır) testi dosyası tester.js
var:
#import "./Tester-Module.js"
// Prints 'Regular SetUp()'
Tester.setUp();
Ancak, ben başka modül dosyasında Tester-Module.js
modülünü genişletmeye çalışırsanız, ben Tester nesneyi başvuramaz.
#import "./Tester-Module.js"
// Outputs:
// Exception raised while running script:
// ReferenceError: Can't find variable: Tester\n
Tester.setUp = function() {
UIALogger.logMessage('Overwritten SetUp()');
}
Ve güncellenmiş Test dava dosyasını tester.js
:
#import "./Tester-Extension.js"
// Exception is thrown before this
Tester.setUp();
My umarım ilgili sorular
şunlardır:Neden başvuramaz
Tester-Extension.js
Tester-Module.js
tanımlanan Test modülü uzatırTester-Extension.js
içinde test objesi, ancaktester.js
içinde olabilir?#import makrosu ne yapıyor? Node.js içinde gerektirecek benzer - - UI Otomasyon framework ile desteklenmez