• Blogs (9)
    • 📱 236 - 992 - 3846

      📧 jxjwilliam@gmail.com

    • Version: ‍🚀 1.1.0
  • E2E test: Protractor+Webdriver

    Blogs20152015-10-16


    E2E test: Protractor+Webdriver

    The following is a e2e test example I wrote using protractor and webdriver in Chrome v45:

    //1. conf.js
    exports.config = {
      framework: 'jasmine2',
      seleniumAddress: 'http://localhost:4444/wd/hub',
      specs: ['e2e-spec.js']
    }
    //2. e2e-spec.js
    describe('Protractor E2E Test', function() {
      it('should add one and two', function() {
        browser.get('http://localhost:3000/web-spa/login');
        element(by.id('username')).sendKeys('username');
        element(by.id('password')).sendKeys('password');
        element(by.id('Login')).click();
    
    	var setOption = function(id, ul_id, optionToSelect) {
    	    var select = element(by.id(id));
    	    select.click();
    
    		element.all(by.tagName('option'))
    		    .filter(function(elem, index) {
    		        return elem.getText().then(function(text) {
    		            return text === optionToSelect;
    		        });
    		    }).then(function(filteredElements){
    		        filteredElements[0].click();
    		    });
    	};
    
    	setOption('select2-chosen-2', 'select2-results-2', 'Test Description 1');
    	setOption('select2-chosen-4', 'select2-results-4', 'Test Description 2');
    
        element(by.css('.btn.btn-default.btn-spin')).click();
        browser.driver.sleep(5000);
      });
    });

    when run `protractor conf.js`, its behavior like expected.