13

ローカル サーバーに対して e2e テストを実行し、結果の URL (ナビゲーション ボタンがクリックされた後) が正しい結果であることをテストしようとしています。ただし、結果の URL は常に false です。

私のコードを以下に示します。

HTML:

//http://localhost/#/current_Page
<html>
    <head><title></title></head>
    <body>
    //should change the current url to
    //http://localhost/#/new_page
    <button class="button" ng-click="change_page()">Change Page</button>
</html>

テストコード:

var protractor = require('protractor');
require('protractor/jasminewd');

describe('Tests', function() {      
    var ptor;

    describe('Test 1', function() {
        var ptor = protractor.getInstance();
        ptor.get('#/current_page'); 
        it('change page and current url', function() {
            ptor.findElement(protractor.By.className('.button').click().then(function() {
                expect(ptor.currentUrl()).toContain('#/new_page');
            });
        });
    }, 30000);
});

問題は、ボタンをクリックした後の現在の URL が #/current_url のままであり、期待される結果 #/new_page に変更されないことです。

私がどこで間違ったのか誰か知っていますか?

4

3 に答える 3

2

分度器 1.5.0protractor.getInstance();では機能しなくなったため、代わりに使用する必要がありますbrowser

var protractor = require('protractor');
require('protractor/jasminewd');

describe('Tests', function() {      

describe('Test 1', function() {
    browser.get('#/current_page'); 
        it('change page and current url', function() {
            ptor.findElement(protractor.By.className('.button').click().then(function() {
                browser.waitForAngular();
                expect(browser.getCurrentUrl()).toContain('#/new_page');
            });
        });
    }, 30000);
});
于 2015-01-03T14:13:45.023 に答える