2016-05-26 8 views
2

このテストで問題が発生するのは、時には合格しないこともありますが、後者が失敗する場合があります。 .create_ServiceOrders) "というメッセージがコンソールに表示されます。私の経験上のベース分断器が一貫して合格/不合格になることをテストします

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

やあみんな、私はJI-RUHの助言に続く、今私が手に:、操作する前にこれを試してみてください?!「失敗しました:要素が見えない」なぜこの – user3400351

答えて

0

:(それを修正するために何をすべきかIDK、私は通常、別のit関数の中でこのような何かを、それを分離行う。

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

クールおかげで、今私は取得しないで"失敗:使用している要素が見つかりませんでしたロケータ:By(css selector、.add.create_ServiceOrders) "というメッセージが表示されなくなりました。「Failed:element not visible」というメッセージが表示されます。/ – user3400351

+0

これは実際には悪い解決策です。 Jasmineはあなたの 'それ'がテストケースであり、記述がテストスイートであることを設計されています。これにより、beforeAll、beforeEach、afterAll、afterEachのすべてのメリットが失われ、レポート結果に多くの苦労があります。 – Xotabu4

0

あなたは準備ができて要素を待つ必要。

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(); 
... 
関連する問題