2016-06-12 5 views
1

Я новичок в Протравителе. Я использую Protractor для тестирования как угловых, так и не угловых применений. Моя последовательность испытаний будетТранспортир угловой и не угловой

  1. Тестирование Non-Угловая входа в pange
  2. После входа в систему тестирования Угловое Главная страница.

Я пробовал приведенные ниже сценарии, но это порождает у меня ошибку.

config.js

exports.config = { 

    seleniumAddress: 'http://localhost:4444/wd/hub', 

capabilities: { 

    'browserName': 'firefox' 
    }, 
    specs: ['spec1.js'], 
    jasmineNodeOpts: { 
    showColors: true 
    } 
}; 

Spec1.js

describe('angularjs homepage', function() { 
    it('Availity', function() { 

    browser.driver.get('https://qa-apps.availity.com/availity/web/public.elegant.login'); 

    browser.driver.findElement(by.name('userId')).sendKeys('xxxx'); 
    browser.driver.findElement(by.name('password')).sendKeys('yyyy'); 

    browser.driver.findElement(by.id('loginFormSubmit')).click(); 

browser.driver.sleep(1); 
browser.waitForAngular(); 

element(by.className('navbar-brand-availity')).click(); 


    }); 
}); 

Любая помощь по данному вопросу высоко ценится.

+0

Извините. Забыл номер уведомления об ошибке. Здесь это ... Ошибка: Ошибка при ожидании синхронизации Protractor со страницей: «window.an gular не определен. Это может быть либо из-за того, что это неглавная страница, либо , потому что ваш тест включает в себя навигацию на стороне клиента , который может помешать Protost самообучение учения. Подробнее см. http://git.io/v4gXM. –

ответ

2

Вы должны иметь синхронизации, когда вы работаете с не угловой части, а затем включите синхронизацию снова после того, как вы вошли в систему что-то вроде:.

describe('angularjs homepage', function() { 
    beforeEach(function() { 
    browser.ignoreSynchronization = true; 

    browser.driver.get('https://qa-apps.availity.com/availity/web/public.elegant.login'); 

    browser.driver.findElement(by.name('userId')).sendKeys('xxxx'); 
    browser.driver.findElement(by.name('password')).sendKeys('yyyy'); 

    browser.driver.findElement(by.id('loginFormSubmit')).click(); 
    browser.driver.sleep(1); 

    browser.ignoreSynchronization = false; 
    browser.waitForAngular(); 
    }); 

    it('Availity', function() { 
     element(by.className('navbar-brand-availity')).click(); 
    }); 
}); 
0

вы можете сделать вход в ваш конфигурационный файл транспортира (config.js) с функцией onPrepare, например

exports.config = { 
    onPrepare: function() { 

     browser.baseUrl = browser.params.baseUrl; 
     browser.driver.get(browser.baseUrl + 'Account/Login'); 

     browser.driver.findElement(by.id('UserName')).sendKeys('username'); 
     browser.driver.findElement(by.id('Password')).sendKeys('PASSWORD'); 
     browser.driver.findElement(by.id('Login')).sendKeys(protractor.Key.ENTER); 

     return browser.driver.wait(function() { 
      return browser.driver.getCurrentUrl().then(function (url) { 
       return /home/.test(url); 
      }); 
     }, 90000); 
    }, 
}; 
Смежные вопросы