角度和非角度的量角器

角度和非角度的量角器

问题描述:

我是量角器的新手。我正在使用量角器来测试Angular和非Angular应用程序。我的测试顺序是角度和非角度的量角器

  1. 测试无棱角登录胖哥
  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

对不起..忘了提醒错误的详细信息。这里是...失败:等待量角器与页面同步时出错:“window.an gular is undefined。这可能是因为这是一个无角度页面或 ,因为您的测试涉及客户端导航,这可能会干扰Prot ractor的引导。有关详细信息,请参阅http://git.io/v4gXM。 –

你必须有同步关闭,当你与非角部分的工作,然后重新打开同步您登录后是这样的:。

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(); 
    }); 
}); 

,你可以做登录在你的量角器配置文件(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); 
    }, 
};