Wenn ich überprüfe, ob das Element vorhanden ist, funktioniert der Code gut, wenn ich überprüfe, dass Element kein Jasmine-Timeout ist.Jasmine-Timeout-Fehler beim Prüfen eines Elements erhalten ist nicht vorhanden unter Verwendung von Winkelmesser
var fee = $$('[ng-if="paymentDetails.responseObject[0].fee_amount > 0"]');
expect(fee.isPresent()).toBe(false);
Fehler nachrichten-
Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL.
Stack: Fehler: Timeout - Async Rückruf wurde nicht innerhalb Timeout angegeben durch jasmine.DEFAULT_TIMEOUT_INTERVAL aufgerufen. Stack: bei onTimeout (timers.js: 386: 14) bei tryOnTimeout (timers.js: 250: 5) bei Timer.listOnTimeout (timers.js: 214: 5)
On config.js Datei i ahve die Jasmin Timeout für 60 Sek
exports.config = {
seleniumAddress: 'http://localhost:4444/wd/hub',
multiCapabilities: [
{
browserName: 'chrome',
shardTestFiles: true,
maxInstances: 1,
chromeOptions: {
args: [
'--disable-infobars',
'--disable-extensions',
'verbose',
'log-path=./reports/chromedriver.log'
],
prefs: {
'profile.password_manager_enabled': false,
'credentials_enable_service': false,
'password_manager_enabled': false
}
}
},
{
browserName: 'internet explorer',
platform: 'ANY',
version: '11'
}
],
framework: 'jasmine2',
suites: {
em2_login: ['e2e/tests/login/login.spec.js']
}
useAllAngular2AppRoots: 'true',
allScriptsTimeout: 60000,
getPageTimeout: 60000,
jasmineNodeOpts: {
showColors: true,
displayStacktrace: true,
displaySpecDuration: true,
defaultTimeoutInterval: 60000,
disableChecks: true
},
params: {
siteUrl: ''
},
onPrepare: function() {
jasmine.DEFAULT_TIMEOUT_INTERVAL = 60000;
},
},
habe ich versucht, durch browser.sleep(5000)
und browser.waitforAngular()
noch Timeouts eingesetzt wird.
Hier ist der HTML-Code für das Element mit den derzeitigen Staats
<tbody>
<!-- ngRepeat: lineItem in paymentDetails.responseObject[0].schedules[0].schedule_line_items track by $index -->
<tr class="ng-scope" ng-repeat="lineItem in paymentDetails.responseObject[0].schedules[0].schedule_line_items track by $index">
<td class="ng-binding">Jul 27, 2017</td>
<td>
<td class="ng-binding">$45.00</td>
<!-- ngIf: paymentDetails.responseObject[0].fee_amount > 0 -->
<td class="ng-binding ng-scope" ng-if="paymentDetails.responseObject[0].fee_amount > 0">$0.90</td>
<!-- end ngIf: paymentDetails.responseObject[0].fee_amount > 0 -->
<td>
<td class="" ng-switch="" on="lineItem.statusString" ng-show="lineItem.statusString" style="">
<td class="ng-binding ng-hide" ng-show="!lineItem.statusString" ng-bind-html="receiptTemplate.ready" style="">Ready</td>
<td class="ng-binding" ng-show="lineItem.authorizationString" ng-bind-html="lineItem.authorizationString" style="">53433 Bogus Gateway: Forced success</td>
<td class="ng-hide" ng-show="!lineItem.authorizationString" style=""/>
<td>
</tr>
Kann mir jemand helfen, auf diesem bitte?
Können Sie bitte die vollständige Datei 'conf.js' posten. Vielen Dank! – demouser123
Habe die komplette Datei conf.js gepostet. – Smitha