Articles of 量angular器

如何在执行完所有testing用例之后closures浏览器,或者使用带有angularjs的selenium服务器的量angular器testing用例失败之后

我能够使用angularjs使用selenium服务器运行与量angular器testing用例 我想在执行所有testing用例之后closures浏览器,或者在testing用例失败后closures浏览器, 我能够通过在最后一个testing用例中写入browser.close()来实现这一点,但是如果testcase失败,那么这样做是行不通的,在这种情况下是否还有其他方式来closures浏览器,或者是否有任何不同的名称afterEach ? 提前致谢。

如何运行browser-perf的Node APItesting

我正在尝试configurationbrowser-perf来测量浏览器性能指标。 我可以通过使用命令行来运行它 browser-perf –selenium=http://localhost:4444/wd/hub http://yourwebsite.com 但是,我想为browser-perfconfiguration节点模块API 。 以下是问题: 1.我无法find执行节点API browser-perftesting的命令。 另外,我在哪里打电话给browserPerf() – 在configuration或规格? 如果有人可以提供Node API设置的步骤,那真的很有帮助! PS:我发现protractor-perf conf.js命令用于量angular器 – 性能testing。 只是无法find类似的浏览器性能!

如果元素包含值,如何退出量angular器中的testing用例

我一直在量angular器上写一套testing,差不多完成了。 我很难搞清楚如何做相当普通的事情。 我希望能够检查一个文本框是否包含一个值,如果是,退出testing用例失败。 (如果文本框包含一个值,我知道testing用例不可能传递) 我目前正在尝试这样的事情: tasksPage.generalInformationDateOfBirthTextbox.getAttribute('value').then(function(attr){ //attr contains the correct value in the textbox here but how do I return it to parent scope so I can exit the test case? console.log("attr length is " + attr.length); expect(attr.length).toBe(0); },function(err){ console.log("An error was caught while evaluating Date of Birth text value: " + err); }); 期望声明失败,因为我期望它,但testing用例继续下去,这似乎是预期的行为。 […]

量angular器“无法读取属性”点击“未定义的”

我不能点击一些CSS定位器来操纵他的“math地板”。 请你帮忙。 这个testing的CSS部分: <input ng-attr-id="industry_{{$index}}" ng-attr-value="{{$index}}" ng-model="stateData.currentIndustryIndex" type="radio" class="ng-pristine ng-valid" name="00K" id="industry_0" value="0"> 这是我的testing – it ('onboarding – screen 2', function() { browser.driver.wait(by.css('.industry input[type="radio"]'), 10000); element (by.css('.industry input[type="radio"]'))[Math.floor(Math.random() * (12 – 0 + 1))].click(); //element(by.css("li.ng-scope.icon-laptop > label.ng-binding")).click(); browser.driver.sleep(1000); //element(by.xpath("//div[1]/div/main/div[3]/section/div/form/div[1]/section[2]/div/ul/li[4]/label")).click(); browser.driver.sleep(2000); //element(by.css('input.btn')).click(); browser.driver.sleep(3000); //Capture Screenshoot browser.driver.takeScreenshot().then(function(data){ var base64Data = data.replace(/^data:image\/png;base64,/,""); var fs = require("fs"); fs.writeFile("onboarding-screen2.png", base64Data, […]

量angular器插件 – 辅助function – AssertionError:path必须是一个string

我正在尝试使用可用于量angular器的插件。 例如(辅助function,控制台等)。 但是,当我尝试运行E2Etesting失败,出现以下错误信息。 **[launcher] Error: AssertionError: path must be a string at Module.require (module.js:362:3) at require (module.js:380:17) at new Plugins (/home/protractor-git/beta- e2e/node_modules/protractor/lib/plugins.js:39:29) at driverprovider_.setupEnv.then.then.then.then.frameworkPath (/home/protractor-git/beta-e2e/node_modules/protractor/lib/runner.js:257:15) at _fulfilled (/home/protractor-git/beta-e2e/node_modules/protractor/node_modules/q/q.js:797:54) at self.promiseDispatch.done (/home/protractor-git/beta-e2e/node_modules/protractor/node_modules/q/q.js:826:30)** Config.js中的插件configuration如下所示。 plugins: [ { chromeA11YDevTools: { treatWarningsAsFailures: true }, path: 'node_modules/protractor.plugins/accessiblity' }, { path: 'node_modules/protractor/plugins/console', failOnWarning: false , failOnError: true } ] package.json,具有“accessibility-developer-tools”:“^ 2.6.0”作为Dev […]

Protractor JS不能在IE11上运行多合并testing

我想通过Protractor 2.0在Node.JS上运行Selenium的跨浏览器testing。 FF和Chrome的实例运行正常,只有IE11没有打开。 当我尝试了它,我得到错误如下: c:\automation\tests>protractor conf.js [launcher] Running 3 instances of WebDriver ———————————— [internet explorer #3] PID: 8904 [internet explorer #3] Specs: c:\automation\tests\message.js [internet explorer #3] [internet explorer #3] Using the selenium server at http://localhost:4444/wd/hub [internet explorer #3] ERROR – Unable to start a WebDriver session. [internet explorer #3] [internet explorer #3] C:\Users\idan\AppData\Roaming\npm\node_modules\protractor \node_modules\selenium-webdriver\lib\atoms\error.js:113 [internet […]

停止JavaScript执行,直到承诺解决

我有一个特定的用例,在testing代码中,我想获取表头(asynchronous),然后dynamic创build一个JavaScript对象的getters。 我想在我的testing中使用的语法是antenneTable.row(0).getAzimut(); 。 我遇到的问题是antenneTable.row(0); 返回一个承诺,所以getAzimut尚未定义在该对象上。 如果我使用antennetable.row(0).then(),但是想要保留语法,我知道如何解决这个问题。 提前致谢 这是我的代码: Row.js 'use strict'; var Row = function (row, classes) { var outer = this; function camelCase(input) { return input.toLowerCase().replace(/-(.)/g, function(match, group1) { return group1.toUpperCase(); })} for(var i =0 ; i< classes.length; i ++){ var methodName = camelCase("get-"+classes[i]); (function(index) { outer[methodName] = function () { return row.all(by.tagName('td')).get(index).getText(); } […]

我想要使​​用节点js返回文件的内容

我已经在量angular器中编写了下面的代码。 helper.js: var fs = require('fs'); helper = function(){ this.blnReturn = function(){ var filePath = '../Protractor_PgObjModel/Results/DontDelete.txt'; fs.readFileSync(filePath, {encoding: 'utf-8'}, function (err, data){ if (!err) { console.log(data); return data; } else { return "False"; } }); }; }; module.exports = new helper(); ————上面的js被调用的实际文件——————- describe("read contents of file",function(){ var helper = require("../GenericUtilities/helper.js"); it('To Test read data',function(){ console.log("helper […]

找不到模块'jasmine-reporter'

我的'npm'文件夹位于D:\ Box文件夹中,因为我没有C上的空间。通过在系统环境variables中添加一个名为PROTRACTOR的新环境variables来configuration量angular器。 然后在System Path中input:%PROTRACTOR%\ bin 这完美地适用于量angular器。 现在我想添加茉莉花记者,我粘贴npm \ node_modules \ jasmine-node \ node_modules'jasmine-reporter'和'jasmine-growl-reporter'文件夹。 然后在conf.js中运行一个testing用茉莉花报告,我看到错误信息: 找不到模块'jasmine-reporter'。 我尝试的是: 在npm \ node_modules中粘贴'jasmine-reporter'和'jasmine-growl-reporter'文件夹 添加系统环境variablesNODE_PATH:D:\ Box \ npm \ node_modules 结果是一样的。 有人请帮我解决这个问题。

通过咕噜在现场服务器上运行量angular器

我正在尝试通过一个咕task任务在live-server上运行我的portractortesting。 我已经安装了live-server( https://www.npmjs.com/package/live-server )和grunt-execute。 随着grunt执行我设法启动实时服务器与grunt命令分两步: 首先我创build了一个节点脚本(liveServer.js) var liveServer = require("live-server"); var params = { port: 8080, host: "localhost", open: true, wait: 1000 }; liveServer.start(params); 第二我在我的grunt文件中创build一个任务来启动脚本:(在grunt.initConfig中) execute: { liveserver: { src: ['liveServer.js'] }, } 并注册一个命令来触发它: grunt.registerTask('live', [ 'execute:liveserver' ]); 现在,如果我在我的命令行运行服务器启动时运行“grunt live”,打开一个浏览器,并且可以浏览我的应用程序。 我也在我的grunt文件中创build了一个量angular器任务,工作也很好。 (在grunt.initConfig中) protractor: { options: { keepAlive: false, noColor: false }, e2e: { options: { […]