2016-07-16 28 views
1

私は2つのテスト(角度なし)を持っています。まず、間違った資格情報が原因でテストが失敗することです。 2番目のテストは正しい資格のために合格する必要がありますが、分度器は電子メールの電子メールフォームを実行することさえできず、スキップします。なぜこのようなことが起こっているのでしょうか?失敗した試行の後に分裂器が失敗しましたか?

また、別にテストを実行すると、正常に動作します。


 
    describe('When clicking on login with bad credentials', function() { 
 
    it('Should login to dashboard', function() { 
 
     browser.driver.findElement(by.id('email')).sendKeys('[email protected]'); 
 
     browser.driver.findElement(by.id('password')).sendKeys('pass'); 
 
     element(by.id('login')).click().then(function() { 
 
     expect(element(by.id('main-logo')).isPresent()).toBe(false); 
 
     }); 
 
    }); 
 
    }); 
 

 
    describe('When clicking on login with good credentials', function() { 
 
    it('Should login to dashboard', function() { 
 
    browser.driver.findElement(by.id('email')).sendKeys('[email protected]'); 
 
     browser.driver.findElement(by.id('password')).sendKeys('[email protected]@@'); 
 
     element(by.id('login')).click().then(function() { 
 
     expect(element(by.id('main-logo')).isPresent()).toBe(true); 
 
     }); 
 
    }); 
 
    });

+1

何のエラーを得ていますか? stacktraceを貼り付けることはできますか? –

+0

それは真実だと思われるが、問題はそれが自動的に電子メールフィールドを入力しなかった、それは単にそれをスキップし、最初のテストでは正常にそれを満たす。 –

+1

非角形のアプリケーションを使っているので、 'browser.ignoreSynchronization = true'を入れましたか? –

答えて

0

それはやって理にかなっているので、私は最初、要素が表示されることを保証することを第一の入力データを送信する前に。また、要素またはnpmライブラリを使用して、テストケースで何がうまくいかないかをキャッチすることもできます。ファイルをごconf.js上:

0

は、ブラウザの再起動オプション "真restartBrowserBetweenTests" を言及していますか?そうでない場合は、一度試してみてください。

0
あなたは非anguarページ上にある場合

、およびbrowser.ignoreSynchronization=false使用して、あなたはあなたがこれまでにこのテストのためのログインボタンをクリックした後、待機またはExpectedConditionsのいくつかの種類を実行する必要があります、それはあなたの問題を解決することを願っています一貫した結果をもたらす。次のページが読み込まれるのを待つことなく、クリック直後にロゴがチェックされている可能性があります。あなたは

あなたは.sendKeys()前に入力要素に.clear()を送信し、あなたのテストが正しいことを確認しようとするかもしれません([email protected]のタイプミス)

関連する問題