2016-05-26 11 views
2

Das Problem, das ich mit diesem Test habe ist, dass es manchmal besteht, manchmal es scheitert, und wenn es Letzteres ein "Failed: Kein Element gefunden mit Locator: By (css Selektor, .add .create_ServiceOrders) "erscheint in der Konsole. IDK, was es zu beheben zu tunWinkelmesser Tests inkonsistent bestanden/nicht bestanden

describe('angularjs homepage', function() { 

    it('should greet the named user', function() {  
    //browser.ignoreSynchronization = true 
    browser.get('https://int.m-tech.com/hotsosmobile/app/Index?/login#/login'); 
    browser.waitForAngular(); 

    var input = element(by.model('loginInfo.login')); 
    input.sendKeys('xxx'); 
    expect(input.getAttribute('value')).toBe('xxx'); 

    var input = element(by.model('loginInfo.password')); 
    input.sendKeys('yyy'); 
    expect(input.getAttribute('value')).toBe('yyy'); 

    browser.waitForAngular(); 

    browser.driver.actions().sendKeys(protractor.Key.ENTER).perform(); 

    browser.waitForAngular(); 

    var AddButton = element(by.css(".add.create_ServiceOrders")); 
    browser.actions().mouseDown(AddButton).mouseUp().perform(); 
    browser.actions().mouseMove(AddButton).click().perform(); 

    browser.waitForAngular(); 

    var AddButton = element(by.css(".icon-standard-issue-floors")); 
    browser.actions().mouseDown(AddButton).mouseUp().perform(); 
    browser.actions().mouseMove(AddButton).click().perform(); 

    browser.waitForAngular(); 
    ..... 
}); 
}); 
+0

Hey Leute, so folgte ich Rat des ji-ruh und jetzt bekomme ich „Fehler: Element nicht sichtbar“ warum sind die – user3400351

Antwort

0

Basis auf meiner Erfahrung :(, ich in der Regel in einer anderen it Funktion so etwas wie dies trennen.

var AddButton = element(by.css(".add.create_ServiceOrders")); 

it ('should pass', function() { 
browser.actions().mouseDown(AddButton).mouseUp().perform(); 
}); 

it ('should pass', function() { 
browser.actions().mouseMove(AddButton).click().perform(); 
}); 
+0

cool danke, jetzt habe ich nicht bekommen, die? "Failed: Kein Element gefunden mit locator: By (css selector, .add.create_ServiceOrders) "Nachricht mehr, jetzt bekomme ich das" Failed: Element nicht sichtbar "eins:/ – user3400351

+0

Das ist eigentlich eine schlechte Lösung. Jasmine ist so konzipiert, dass es ein Testcase ist und beschreiben ist eine Testsuite. Mit dieser Vorgehensweise verlieren Sie alle Vorteile von beforeAll, beforeEach, afterAll, afterEach und haben mit der Berichterstellung viel Mühe. – Xotabu4

0

Sie warten müssen für das Element bereit zu sein, ., vor Manipulation Versuchen Sie folgendes:

var AddButton = $(".add.create_ServiceOrders"); 
browser.wait(protractor.ExpectedConditions.visibilityOf(AddButton), 5000, 'Button should be visible'); 
browser.actions().mouseDown(AddButton).mouseUp().perform(); 
browser.actions().mouseMove(AddButton).click().perform(); 
... 
Verwandte Themen